首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么“单引号的字符串优先于双引号的字符串。”在js中?

为什么“单引号的字符串优先于双引号的字符串。”在js中?
EN

Stack Overflow用户
提问于 2011-10-01 12:41:35
回答 4查看 8.8K关注 0票数 16

在使用gjslint时,我得到了一个提示:“单引号字符串优先于双引号字符串”。

那为什么呢?我对此有点困惑。为什么首选单引号?

希望能得到一些帮助。谢谢大家。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2011-10-01 13:28:16

这只是某人的观点。

很多人确实喜欢单引号,但也有很多人喜欢双引号。我倾向于使用双引号只是出于其他语言的习惯,但我并没有强烈的偏好:如果我听到一个令人信服的理由为什么单引号更好,我愿意改变,但到目前为止,我甚至没有听到一个好的理由,更不用说一个令人信服的理由了。

甚至连Google JavaScript Style Guide都说单引号是首选,但没有给出充分的理由:

“表示一致性,单引号(')比双引号(")更可取。这在创建包含HTML的字符串时非常有用。“

(然后给出一个非常简短的字符串示例,该字符串甚至不包含HTML。)

许多人似乎认为XHTML只有在使用双引号时才有效,但事实并非如此: XHTML规范既允许双引号,也允许双引号。(话虽如此,我遇到的98%的XML,包括XHTML,都使用了双引号。)

在任何一个源文件中,我都会尝试使用其中的一个,但是如果中间的一行代码需要很多嵌入的引号,我会很乐意只修改该行,以避免该行中的大量转义。

更新:刚刚意识到JSON只有在使用双引号时才有效。显然,JSON不是JavaScript,但这也是为什么(a)一些人可能更喜欢在JavaScript中使用双引号,这样对象字面量看起来就像JSON,以及(b)一些人可能更喜欢单引号,这样他们就可以手动编码JSON,而不必转义双引号。(不,我不建议手动编码JSON,但我见过这样做。)

票数 22
EN

Stack Overflow用户

发布于 2011-10-01 12:42:59

如果使用单引号,则不必转义html中的双引号。

例如..。

使用单引号可以做到这一点

var a = '<a href="something.html" rel="yes" title="whatever">a link/a>';

使用双引号时,您需要对双引号中的那些进行转义,如下所示

var a = "<a href=\"something.html\" rel=\"yes\" title=\"whatever\">a link/a>";

更多的工作,更难维护,更容易犯错误。

票数 16
EN

Stack Overflow用户

发布于 2011-10-01 13:37:07

我的键盘有一个‘/’键,因此我可以轻松地键入单引号,但需要按shift键才能输入双引号。:)

至于JSLint的警告,它只是试图强制执行一个任意的标准,以促进更一致的编码风格,就像它在其他间距和缩进问题上所做的那样。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7618214

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档