在jQuery中声明变量时,美元符号后的点是什么意思?
我看到变量声明为:在jQuery中声明变量时,美元符号后的点是什么意思?,jquery,Jquery,我看到变量声明为: $.root = $("body"); 及 两者之间的区别是什么?第一个是在jquery中创建一个名为root的属性并设置其值。第二个是定义名为$root的变量的值在右边。JavaScript中的函数是对象。和JavaScript中的大多数对象一样,您可以任意向它们添加属性。$函数就是这样一个函数。因此,如果您想将属性弹出到它并引用jQuery集合或引用,您可以 通过将集合作为属性添加到$函数中,它在当前范围内减少了一个变量。如果希望了解jQuery函数对函数的拓扑结构和(
$.root = $("body");
及
两者之间的区别是什么?第一个是在jquery中创建一个名为root的属性并设置其值。第二个是定义名为$root的变量的值在右边。JavaScript中的函数是对象。和JavaScript中的大多数对象一样,您可以任意向它们添加属性。
$
函数就是这样一个函数。因此,如果您想将属性弹出到它并引用jQuery集合或引用,您可以
通过将集合作为属性添加到$
函数中,它在当前范围内减少了一个变量。如果希望了解jQuery函数对函数的拓扑结构和(可枚举)属性列表的影响,可以在前后检查jQuery函数的键:
Object.keys($);
//[“fn”、“extend”、“expando”…“parseHTML”、“offset”、“noConflict”]
$.root=$(“正文”);
// []
对象。键($);
//[“fn”、“extend”、“expando”…“parseHTML”、“offset”、“noConflict”、“root”]
这将向$functor(通常称为jQuery对象,如$==jQuery)添加一个属性
这将向“全局”范围(javascript中的窗口对象)添加一个属性。
您也可以将后者称为
window.$root
基本上:
var a=1代码>和变量x={};x、 a=1代码>“…当前范围内少了一个变量…”。仍然不清楚为什么更好,或者什么时候更好,什么时候不更好。@CraigHicks由于范围中没有root
var,您就没有机会将其与以后可能引入的任何其他root
var相冲突。老实说,我不认为有什么好的理由去做我上面的建议,特别是因为我们现在有了let
。我只是因为作者的要求才展示它。谢谢你的回复——不知何故,直到你提到它之前,我都没能了解到“let”!我曾担心,一旦把“$”用作存储空间的秘密泄露出去,游客就会蜂拥而至——但现在我不必担心,
$.root = $("body");
$root = $("body");
window.$root