是否有理由在Javascript中使用单引号而不是双引号?

时间:2011-08-31 15:13:45

标签: javascript coding-style

  

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

在Javascript中,您可以在字符串周围使用双引号或单引号,这意味着完全相同:

var a = 'hello';
var b = "hello";
alert(a === b); //alerts true

我正在阅读一些Douglas Crockford's code,看起来他通常在字符串文字周围使用单引号。

此外,大多数回答Javascript问题的高级代表似乎都使用字符串周围的单引号(example)。

由于我通常在字符串周围使用双引号(大部分只是出于习惯),我开始对我在这里使用双引号的所有答案感到自我意识。我没有听说过为什么人们应该使用一个而不是另一个,因为据我所知,它们是可以互换的。

为什么所有Javascript忍者都使用单引号?我也应该使用单引号吗?如果我继续使用双引号,是否会有一些意想不到的致命后果?

3 个答案:

答案 0 :(得分:1)

理想情况下,字符串用双引号括起来。在某些情况下,当您在其中包含具有双引号的文本时,您希望使用单引号:

var txt = 'This "should" be escaped';

如果没有单引号,你需要转义双引号,这会让它们变得有点难看(虽然味道很重要)。

如果您处于ASP.Net世界,通常要解决DataBinder表达式的肮脏问题,请用单引号括起字符串。

另外,我发现单引号更容易输入。

必须使用双引号的另一个地方是构建JSON对象:

var obj = { "a": 1 }; // valid
var obj = { 'a': 1 }; // invalid

无论哪种方式,保持一致是最重要的。选择一种样式并在整个代码中坚持使用(除非遇到转义问题)。

答案 1 :(得分:0)

我认为这是一种主要的风格选择,但是当涉及引用或字符串转义时,它会影响你的字符串。

总体而言,确保您选择的方法一致。

答案 2 :(得分:0)

你可以选择任何一个,主要是要一致。

它们可以互换使用,但是大多数语言如c#"需要转义,但'不是这样,因此使用'

稍微简单一些