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

时间:2012-10-23 16:19:31

标签: javascript model-view-controller

我有一个MVC应用程序,我使用jQuery将一些文本插入到DOM中。

如果我使用:

$("#toggle").text('<%: translated.Show %>');

呈现文字。

如果我使用:

$("#toggle").text("<%: translated.Show %>");

如果资源字符串包装在双引号中,则会抛出JavaScript错误,请注意包装工作版本的单引号和包含错误版本的双引号。

任何人都可以解释原因,我认为Javascript中的单引号和双引号之间几乎没有区别。

'translated.Show'字符串不包含引号只是纯文本。

1 个答案:

答案 0 :(得分:2)

JS中双引号和单引号之间的唯一区别是单引号内部,单引号必须在双引号内转义,双引号必须转义。

问题很可能是translated.Show内的数据包含双引号(尽管你保证它不会......引用字符 被认为是纯文本的一部分)。

确保您关注Rule 3: JavaScript Escape Before Inserting Untrusted Data into JavaScript Data

相关问题