令人困惑的Javascript报价

时间:2011-08-10 12:01:52

标签: javascript jquery

在jQuery文档中,大多数字符串都是使用单引号“声明”的。包括jQuery UI的documentation

那么为什么不呢?

$(".datepicker").datepicker({ dateFormat: 'dd.mm.yy' });

工作,但是这个

$(".datepicker").datepicker({ dateFormat: "dd.mm.yy" });

呢?使用单引号时,datepicker会忽略我的dateFormat设置。

(忽略我在jQuery选择器中使用双引号的愚蠢习惯,但在其他地方使用单引号:P)

3 个答案:

答案 0 :(得分:2)

他们是完全相同的。 Javascript可以使用单个或双重qotes来表示字符串文字。

因此,您必须在其他地方出现导致问题的错误。尝试将测试页面提取到最低限度以尝试确定此错误的位置。

答案 1 :(得分:0)

嗯..也许here就是答案。但是,无论如何,我仍然无法理解为什么你在这里有错误。

答案 2 :(得分:0)

你说的是不可能的。
Javascript无法知道对象文字中是否使用了单引号或双引号({string: "string"});即使它确实如此,datepicker和jQuery(UI)也不关心。

现在,如果您通过XMLHttpRequest接收对象文字作为JSON对象(或者只是将对象文字解析为JSON),单引号将失败,尽管如此,名称/值对中的未引用名称将像您一样在你的例子中。

我能想到的另一件事就是导致这个问题,如果你使用反引号(`)或弯曲引号而不是单引号(‘’)。