使用 jQuery 时何时/为啥要在变量前加上“$”? [复制]
Posted
技术标签:
【中文标题】使用 jQuery 时何时/为啥要在变量前加上“$”? [复制]【英文标题】:When/why to prefix variables with "$" when using jQuery? [duplicate]使用 jQuery 时何时/为什么要在变量前加上“$”? [复制] 【发布时间】:2011-09-06 18:11:04 【问题描述】:可能重复:Why would a javascript variable start with a dollar sign?
我看到人们在使用 jQuery 时在变量前使用美元符号。这背后有什么原因吗?我错过了一些基本的东西还是只是一种常见的做法?
【问题讨论】:
我实际上没有发现任何有用的东西。错过了那个!谢谢。 这不是那个问题的重复——这个问题明确关注在 jQuery 上下文中的使用,并且收到了一组完全不同的回复。 【参考方案1】:对我来说,一个常见的做法是:
如果变量是私有的,我会使用如下下划线:
(function()
var _foo = "bar";
)()
如果是公开的,我将不使用下划线:
var foo = "bar"
如果是 jQuery 选择器,我将使用 $
:
var $foo = $('bar');
//then you can access it like this
$foo.attr('id')
这只是编码约定,它允许您在代码后面快速引用变量的类型。
【讨论】:
这似乎是个好习惯。【参考方案2】:使用 JQuery 的代码中的美元符号通常意味着所讨论的变量是 jQuery 变量(由 jquery 包装的对象)。
【讨论】:
【参考方案3】:许多使用 jQuery 的人会在包含 jQuery 对象的变量前加上 $,以便于识别它们。考虑这个例子:
var $img = $(".someclass span.otherclass img");
/* somewhere later in the code */
$img.bind("click", function() /*...*/);
【讨论】:
【参考方案4】:根据我的经验,这只是一种可读性。一些开发人员喜欢为他们的变量添加前缀,以便于发现它们。这也可能是一种 php 习惯逐渐渗透到 Javascript 中。
【讨论】:
【参考方案5】:这是对 jQuery 包装对象的常见引用。它使阅读代码更容易知道哪些变量是 jQuery 包装的。
//Item has been "cached" for later use in the script as a jQuery object.
var $item = $(this);
【讨论】:
在变量名前使用 $ 是所谓的“匈牙利符号”,与使用 int_count、arry_list 或 str_name 没有区别。这没有错,但很多人认为这是一种过时的变量命名方式。 在使用 jQuery 的情况下,这并不是过时的,而是一种常规做法。 常规不排除过时:匈牙利符号和 jQuery 的优秀读物:bennadel.com/blog/… 我从未使用过——或见过——$item
在我处理过的代码中使用的符号,甚至表明它包含一个 jQuery 对象。但是,这种用法可能是 arguably Apps Hungarian 作为变量“表示一个 jQuery 对象”,而不是 System Hungarian(通常被认为是“坏种类”)。当然,由于缺少静态类型信息,这条线非常模糊。
@Breakskater ,赋值语句与任何代码一样具有自我描述性。 X = Y ... 没有其他办法这么说。如果人们不必来这里参考如何做某事或某事意味着什么,那么有 Stack Overflow、参考书等就没有意义了;这一切都是“显而易见的”。以上是关于使用 jQuery 时何时/为啥要在变量前加上“$”? [复制]的主要内容,如果未能解决你的问题,请参考以下文章