我是一名JavaScript学习者,一直在研究这个问题,但没有成功。除了正则表达式之外,JavaScript中使用的$
符号是什么?任何有关此的资源或读数将不胜感激。 感谢
答案 0 :(得分:58)
这并不意味着什么特别的。
但是因为标识符名称中允许$
,所以许多Javascript库已经将$
用作它们的“中心”接口,或者至少作为访问其功能的快捷方式。
例如,如果您正在使用jQuery并且您说$("div")
,则这是对带有参数“div”的$
函数的调用。当你说$.post()
时,它正在调用post
对象上的$
方法(Javascript很好,因为函数是第一类对象)。
答案 1 :(得分:24)
当我开始使用Prototype框架时,我在JavaScript中熟悉它。在Prototype中,$
只是常用函数的名称(非常非常简化 - document.getElementById
的简称)。就个人而言,我喜欢它的简洁性。
Afaik,它不被语言本身用于任何东西。
对于它的价值,Douglas Crockford建议不要在变量/函数名称中使用$
你写:
请勿使用$(美元符号)或\ 名字中的(反斜杠)。
在Crockford先生的演讲“And Then There Was JavaScript”中加上另一个相当自以为是的引用:
美元符号被添加到该语言中 专门用于代码 生成器和宏进程,如果 你有机器编写代码然后 机器需要有信心 他们创造的变量将 与变量没有冲突 人类将要创造。至 区分他们,我们将允许 机器使用美元符号。一些 忍者们发现了这一点 以为哦,美元符号,我可以使用 美元符号作为函数名称,所以 他们在那里做那件事。它 看起来很蠢。我的意思是,看看 程序与美元符号。
答案 2 :(得分:9)
如果您问为什么某些变量和函数名称以$
开头,那么这只是使用jQuery和/或AngularJS时的约定。
在使用 jQuery 的代码中,$
通常用作包含jQuery选择的变量的前缀。
例如var $container = $('.container');
。
在 AngularJS 中,他们使用$
前缀来表示“核心角度功能”。这样,您就知道框架添加了哪些方法和服务,以及哪些方法和服务是您的应用程序自定义的。