Javascript中单引号和双引号之间的区别

我知道,在PHP中,双引号和单引号的唯一区别在于string中的variables的解释和转义字符的处理。

在JavaScript中,我经常看到在string中使用双引号。 有没有特别的原因呢,还是单引号和双引号完全一样呢?

你会希望使用单引号,如果你想双引号出现在string内(例如,HTML属性),而不必转义,反之亦然。 除此之外,没有区别。

JSON有一个区别 – JSON标准规定所有的键值对都应该用双引号。 (感谢评论中的wulfgarpro),所以我已经开始尽可能地使用双引号,以便在处理JSON时不会犯错误。

绝对没有区别。 免费查询YEEHHAAA

与使用双引号或单引号改变string解释方式的PHP不同,ECMAScript中的两种语法没有区别。 使用双引号的string与使用单引号的string完全相同。 但是,请注意,以双引号开头的string必须以双引号结尾,而以单引号开头的string必须以单引号结尾。

Nicholas C. Zakas – 面向Web开发人员的专业JavaScript

他们是一样的,我通常使用单引号,但那是因为我特别是.net开发人员和asp.net,所以它有助于区分两种types的string。

我只是发现了一个区别。 我正在创build一个移动网站,但我主要是在桌面Firefox上进行testing。 这在Firefox上正常工作:

 var searchArray = searchValue.split(' '); // Split a string at the spaces. 

但是…它不适用于移动Safari(运行iOS 6.1的iPhone 3GS)。 要使其在移动Safari上工作,您必须使用双引号:

 var searchArray = searchValue.split(" "); // Split a string at the spaces. 

如果不使用双引号,则不会分割,只是将整个string放入第一个数组元素中。 这对我来说是一个真正的困惑,花了相当长的一段时间才弄清楚。 我不知道甚至让我尝试转换引号,因为我认为他们总是应该以同样的方式行事。 我没有发现任何关于这个问题的search,所以也许这将有助于某人。