jQuery中的单引号或双引号[重复]

Posted

技术标签:

【中文标题】jQuery中的单引号或双引号[重复]【英文标题】:Single or Double quotes in jQuery [duplicate] 【发布时间】:2011-10-25 01:45:36 【问题描述】:

可能重复:When to Use Double or Single Quotes in javascript

这是专门针对 jQuery 而不是一般的 JavaScript,因为我不是 JavaScript 程序员,而且我开始学习 jQuery。

随着 jQuery 1.6 的发布,使用单引号或双引号是否有特定的变化?

例如,下面的函数可以在 jQuery 1.6 中工作吗?:

$('.selector').show();

或者我必须使用双引号吗?:

$(".selector").show();

提前感谢您的任何澄清。

【问题讨论】:

与***.com/questions/242813/…相关 啊!这很好,谢谢你的链接。 考虑到这个问题专门针对 jQuery,并且被确定为已经回答它的问题广泛涉及原生 JS,并且说问题没有与 jQuery 相关的答案,这个问题不应该是标记为重复。 我认为除了 jQuery 指南和用于澄清脚本的特殊用法外,一个有用的点(至少对我而言)可能会更好地处理嵌套字符串,例如在 jS 表达式中使用服务器端表达式:var j='@helper.func("value")' 等 【参考方案1】:

JQuery Core Style Guidelines 说:

“字符串应始终使用双引号而不是单引号。”

【讨论】:

嗯,根据 jQuery 自己的指导方针,这是正确的答案。但是,需要考虑一些有趣的事情:使用this test,我在 Firefox 17.x 中使用单引号得到更快的响应(在键入此内容时)。但是在 Chrome 中,虽然不同,但差异真的很小……我认为使用单引号和双引号没有区别。取自this comment 使用双引号的重要性显然与执行有关。当我运行$("#target h2" ).replaceWith('<h3>I'm h3</h3>')(带单引号)时,我得到一个语法错误,但$("#target h2" ).replaceWith("<h3>I'm h3</h3>")(带双引号)它按预期执行! 当然你会得到一个错误,因为你用“I'm”中的单引号来终止你的字符串。您必须通过前导反斜杠来转义字符串中的单引号,并且它可以工作。 $('#target h2' ).replaceWith('<h3>I\'m h3</h3>') 这怎么可能是一个被接受的答案?这句话是 JQuery 基金会“内部”编码风格的 STYLE 指南,这意味着项目包括 JQuery 本身和相关库。这并不是要对 JQuery 用户强加一种风格,也不是对编程语言的限制。事实上,这甚至不是所提问题的答案。 would the following function work in jQuery 1.6?: Or do I have to use double quotes? 不,但你可以 @NorCalKnockOut 我通常使用双引号,但是如果您喜欢单引号,则可以使用它们。你选择,这才是重点。它们相同【参考方案2】:

您可以同时使用两者。在 JavaScript 中两者之间没有区别(例如在 php 中有区别)。

顺便说一句,这是一个 JavaScript 问题。您将字符串传递给$() 函数,并且字符串必须被'" 包围。

【讨论】:

没区别,明白了。谢谢。【参考方案3】:

jQuery 是 JavaScript,因此发出相同的行为:两者的行为相同,因为它们都代表一个字符串。

您认为 jQuery 1.6 在这里改变了什么有什么特别的原因吗?

【讨论】:

是的,我们有这个不再工作的幻灯片,开发人员在故障排除期间将 jQuery 版本调用从 1.3.2 更改为 1.6,由于我无法访问服务器,我唯一的资源是问。处理幻灯片的脚本使用单引号,所以我认为 1.6 中发生了一些变化。尽管如此,您的解释还是很有帮助的,至少对于像我这样的 JavaScript n00b 来说:)

以上是关于jQuery中的单引号或双引号[重复]的主要内容,如果未能解决你的问题,请参考以下文章

用其他东西替换或删除新行,但只能在 CSV 文件上使用 PHP 的单引号或双引号之间

js中的单引号与双引号[重复]

JavaScript字符串的单引号和双引号问题

jquery中的单双引号的试用问题

在任何情况下,由于我们有模板文字(反引号),JavaScript仍需要单引号或双引号吗?

PHP,单引号或双引号中哪个更快? [复制]