javascript函数什么是范围和为什么使用$

可能重复:
为什么JavaScript变量会以美元符号开头?

我不确定$范围和$延期是什么,但他们似乎工作。

function xyz($scope, $defer) {
    xyz = this;
    this.defer = $defer;
    this.scope = $scope;
    this.scope.test = function(re) {
        console.log(this,arguments);
    }
}

一般来说,现在这些开发者都会命名一个变量$something来标记它是一个包装框架的对象类型。 例如,要缓存一个jQuery对象,使用$this = $(this);

这就是说,美元符号没有什么特别之处。 只是为了开发者。

有点历史和推理; ECMAScript 3说:

美元符号($)和下划线(_)在标识符的任何地方都是允许的。 美元符号仅用于机械生成的代码

ECMAScript 5说:

美元符号($)和下划线(_)在IdentifierName的任何位置都是允许的。

所以当有人说:“嘿,你不应该在你的变量中使用美元符号,它是用于机械生成的代码!” 你可以说“Psh,ECMA 5,你好吗?”


这些是参数的名称。

更新: $是完全有效的(即使它本身,这可能是更常见的感谢某些JS库)作为JavaScript中的标识符,但它通常不被用作这样的签名。 我猜这些代码是由Perl经验丰富的人编写的,或者可能是一些主要处理基于jQuery的代码的人。

链接地址: http://www.djcxy.com/p/94955.html

上一篇: javascript function what is scope and why using $

下一篇: $ at the beginning and at the end of variable