How to access global variable from a function when the name is same as argument name in JavaScript?
本问题已经有最佳答案,请猛点这里访问。
当名称与JavaScript中的参数名称相同时,如何从函数访问全局变量?
1 2 3 4 5 | var name = null; function func(name) { // How to set the global variable with the passed value } |
1 2 3 4 5 6 7 8 | var name = 'Name outer'; function func(name) { console.log(name); console.log(window.name); } func ('Name inner'); |
但是,这将是不好的做法,你应该避免这种情况。
将参数的名称更改为其他名称。 别无他法,因为它总能看到最里面的
如果您真的在谈论全局变量,可以这样做:
1 2 3 | function func(name) { window.name=name; } |
在浏览器或
1 2 3 | function func(name) { global.name=name; } |
在node.js中但是如果你在一个函数中声明了
但是,如果可能的话,你应该避免使用gobal变量,因为它们由包括库在内的所有使用的代码共享,如果名称归结,你不知道这是否有任何副作用。