JavaScript中$one和var one的区别是什么?
JavaScript中的$one和var one之间有什么区别?因为两者都有效。JavaScript中$one和var one的区别是什么?,javascript,var,Javascript,Var,JavaScript中的$one和var one之间有什么区别?因为两者都有效。 例如: $one = 'hello word!'; var one = 'hello word!'; 工作示例:var one保证将变量设置为本地范围 默认情况下,$one将变量分配到全局范围。它们都是变量名。在JavaScript中,$字符是变量名的有效字符。var关键字只是设置了变量名的作用域,在您的示例中就是一个 由于在不同的JavaScript库(如jQuery)中使用,$变得越来越流行,但是它是一个
例如:
$one = 'hello word!';
var one = 'hello word!';
工作示例:
var one
保证将变量设置为本地范围
默认情况下,
$one
将变量分配到全局范围。它们都是变量名。在JavaScript中,$字符是变量名的有效字符。var关键字只是设置了变量名的作用域,在您的示例中就是一个
由于在不同的JavaScript库(如jQuery)中使用,$变得越来越流行,但是它是一个非常有效的变量名字符。没有区别,变量名可能包含一个
$
符号。您刚刚声明了两个不同的变量-$one
和one
upd:根据@yi_H注释,这两个变量实际上有不同的作用域
var
关键字用于在当前作用域中声明变量,但是如果省略var
,它将在全局命名空间中定义$one在全局作用域中定义,并在每个函数中可见var one
在其封闭范围内定义,在外部不可见。有些人使用“$”作为前缀来表示jQuery对象,如:
$text = $("#myTextElement");
美元没什么特别的;只是另一个变量名。使用“var”告诉解释器变量具有局部作用域。没有var=>global。ie;从页面内的任何位置访问。两个名称都是有效的标识符,没有区别。有关var关键字的使用,请参见
$one
中的$
没有任何特殊含义。它只是另一个普通的JavaScript变量。在一些开发人员中有一种惯例,即前缀变量带有$
,以指示该变量包含jQuery对象。这纯粹是为了风格和可读性,并没有技术或句法上的影响
当您从声明中省略var
时,浏览器会将变量附加到全局对象:
foo = 'bar';
alert(window.foo); // 'bar'
这对于任何一个拥有少量JavaScript(在过去几年中快速增长的一个类别)的网站来说都有着非常重要的意义。最佳做法是始终使用var
声明变量,以防止以后出现许多问题
请参阅:有关变量范围的更多详细信息。将$放在变量前面是jQuery的匈牙利符号。请不要这样做//全局范围,var one='hello word!'//局部范围