我如何在 jQuery 中获取全局变量。这种语法是正确的,我正在使用。
var $val = 2;
or
val = 2; (without using var keyword).
谢谢。
我如何在 jQuery 中获取全局变量。这种语法是正确的,我正在使用。
var $val = 2;
or
val = 2; (without using var keyword).
谢谢。
首先也是最重要的:尽可能避免使用全局变量。这(几乎)总是可能的。(向达赖喇嘛道歉)
但是回答这个问题:
如果您var
在全局范围内(所有函数之外)使用,它会创建一个全局变量。
如果你只是分配给一个你没有在任何地方声明的变量,如果你没有使用严格模式(我建议你使用它),它将隐式创建一个全局。这是隐式全局变量的恐怖,应该避免。
如果你真的,真的需要创建一个全局变量而不使用在全局范围内,你可以通过显式使用对象var
来做到这一点,而不需要恐怖:window
window.val = 2;
但我重申我的开场白:避免使用全局变量。
这是一种方法:在所有代码周围使用范围函数:
(function() { // <== The start of the scoping function
// Your code here, `var`s here are global to *your* code but not actually globals
// ...
})(); // <== The end of the scoping function, and the () to call it immediately
即使在您的代码中,您也应该避免使用全局变量,但是通过使用范围函数,您至少可以保护自己免受外部世界的影响(反之亦然)。