阅读javascript脚本,为什么这么多$(美元符号)?

时间:2011-07-27 15:30:20

标签: javascript

我正在尝试破译.js脚本,我发现它充满了整个$?有没有理由使用它?我是JavaScript的新手。

11 个答案:

答案 0 :(得分:42)

我认为您正在阅读一个名为jQuery(或可能是另一个库)的JavaScript库。 $只是命名空间的简短形式或用作标识符。

你可以这样想jQuery('p')来选择页面上的所有段落, 或者对于简短形式,您只需撰写$('p')

以下是jQuery教程/文档jQuery

的链接

以下是标准清单第7.6节详细介绍ECMA Standard

答案 1 :(得分:40)

许多图书馆使用$作为主要符号。它与JavaScript本身无关,但它是一个简短的独特符号,因此库往往会浮现在它上面。 (您可以在JavaScript中使用$启动标识符,标识符可以是一个字符长,因此$是有效的标识符,就像ax一样。)< / p>

我知道至少有三个使用$的库:

  • jQuery - 这是jQuery的全功能函数,jQuery是jQuery函数的别名; more here
  • Prototype - 这是Prototype取代document.getElementByIdmore here。 Prototype也有$$,用于通过CSS选择器进行查找。
  • MooTools - 与原型相同(因为MooTools要么受到“受到启发”或“从原型分叉”,几年前会根据你的要求而定,more here。和原型一样,它有$$

答案 2 :(得分:10)

$是一个变量。许多框架使用它作为使用它的简写。 Prototype和Jquery是两个大的。这并不意味着$自动就是其中之一。它可以是任何东西,因为JavaScript中的任何东西都可以为$赋值。这是需要注意的事项,因为当您开始组合来自不同来源的脚本时,人们很容易意外地将变量重新分配给其他内容。

很可能它是一个框架引用,但您必须阅读代码才能确定。在某个时间点,$用于表示它引用的代码是自动生成的,但这只是一个指导原则。

答案 3 :(得分:10)

如果您是javascript的新手,$()可能看起来很奇怪。

尝试将其视为

var $ = function(){
    //do something
} 

所以美元符号就像任何其他变量一样是变量的名称。

var myFunction = function(){
    //do something
}
// this is exactly the same just a different name. 

所以美元符号在javascript中没有特殊含义。

框架喜欢使用它,因为你经常使用它们的功能,不得不写例如jQuery()每次都会很乏味。拥有一个角色很好而且很短。

我认为他们也偏好$符号,纯粹是因为它很不寻常,所以很快就可以与其他代码区别开来。

如果控制台返回代码console.log(jQuery)的字符串是jQuery,那么找出它是否是jQuery的快速方法是$()。如果你得到undefined,那就是别的了。

答案 4 :(得分:4)

也许你正在阅读jQuery代码。

因为JavaScript允许您定义以$ sign开头的变量,或者字面上只有$的变量。例如,你可以这样做:

var $ = "something";
alert($);

jQuery是一个基于JavaScript构建的库(当时最受欢迎),它有一个全局对象来保存所有内容。您可以使用$访问该全局对象。

答案 5 :(得分:4)

该脚本可能正在使用第三方库,例如PrototypejsjQuery,或者他定义了自己的函数$(),这解释了为什么美元符号在该脚本中经常出现。

答案 6 :(得分:3)

这是jQuery功能。这就是最有可能的。可能也是Prototype库,或者只是在代码中执行多次需要的函数,例如getElementById

答案 7 :(得分:3)

在没有看到代码的情况下,听起来您正在使用的脚本使用jQuery,因为$是默认的jQuery对象。

答案 8 :(得分:3)

通常,$代表jQuery或其他特定库(Moo Tools等)。 $是引用jQuery对象(或其分配的任何库)的缩写形式。它使代码更易读,更易于使用。

如果您只是学习javascript,您很快就会对jQuery非常熟悉。 :)

答案 9 :(得分:2)

它的jQuery或一些javascript程序员的旧PHP习惯:)

答案 10 :(得分:2)

$只是一个功能。这意味着你使用一些javascript上层结构(框架)。