为什么JavaScript变量以美元符号开头?

为什么JavaScript变量以美元符号开头?

我经常看到JavaScript中有以美元符号开头的变量。您什么时候/为什么选择以这种方式在变量前加上前缀?

(我不是在问$('p.foo')在jQuery和其他方面看到的语法,但是普通变量如$name$order)


Cats萌萌
浏览 883回答 4
4回答

偶然的你

在第一,第二,和ECMAScript第3版,规范显式禁止使用$-前缀变量名称,但在自动生成代码的上下文中除外:美元符号($)和下划线(_)允许在标识符中的任何位置。美元符号只用于机械生成的代码中。但是,在下一个版本中(第5版,这一限制被取消,上面的段落被替换为美元符号($)和下划线(_)允许在标识名.因此,现在可以在变量名称中自由使用$符号。某些框架和库在符号的意义上有自己的约定,在这里的其他答案中也提到了这一点。

慕的地10843

正如其他人所提到的,美元符号被机械地生成的代码所使用。然而,这个约定已经被一些广受欢迎的JavaScript库打破了。jQuery、Prototype和MS Ajax(AKA Atlas)都在标识符(或作为整个标识符)中使用这个字符。简而言之,您可以使用$你想什么时候都行。(翻译不会抱怨。)问题是你什么时候想要用它?我个人不使用它,但我认为它的使用是有效的。我认为Ajax使用它来表示函数是一些更详细的调用的别名。例如:var $get = function(id) { return document.getElementById(id); }这似乎是一个合理的惯例。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript