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)中使用,$变得越来越流行,但是它是一个

JavaScript中的$onevar one之间有什么区别?因为两者都有效。

例如:

$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!'//局部范围