在JavaScript中双引号"和单引号'有什么详细的区别?

在字符串处理上,
见别人的代码有的用单引号,有的用双引号。
这两个之间到底有什么区别?如果用在嵌套上,那又是谁嵌套谁呢?

单引号和双引号其实没啥区别,看你自己习惯了

<input type="button" onclick="alert("1")">-------------------不正确
<input type="button" onclick="alert('1')">-------------------正确

双引号中再用双引号要这样:
var str = "abc\"def\"ghi"
用反斜杠来禁止解析双引号。

下面是我摘录的,希望对你有用:
在一个网页中的按钮,写onclick事件的处理代码,不小心写成如下:
<input value="Test" type="button" onclick="alert(""OK"");" />
IE提示出错后,再漫不经心地改为:
<input value="Test" type="button" onclick="alert(\"OK\");" />
结果还是出错。
这时,我就想不通了,虽然我知道最直接的解决方法是写成这样:
<input value="" type="button" onclick="alert('OK');" />
但为什么javascript中的转义字符\没有效果了呢?
后来找到一段正常的代码:
<input value="Test" type="button" onclick="alert("OK");" />
这时才理解,原来这时,还是归于HTML的管辖范围,所以转义字符应该使用HTML的,而不是javascript的。两个双引号的做法是vbScript的,\"这种做法则是javascript的,而HTML的,则是用",此外还可以使用:"、'。
下面列出各种表达方法:
<html>
<body>
<input value="外双引号内双引号-错误" type="button" onclick="alert("OK");" /><br />
<input value="外单引号内单引号-错误" type="button" onclick='alert('OK');' /><br />
<input value="两个双引号-错误" type="button" onclick="alert(""OK"");" /><br />
<input value="两个单引号-错误" type="button" onclick="alert(''OK'');" /><br />
<input value="\+双引号-错误" type="button" onclick="alert(\"OK\");" /><br />
<input value="\+单引号-错误" type="button" onclick="alert(\'OK\');" /><br />
<input value="外双引号内单引号-OK" type="button" onclick="alert('OK');" /><br />
<input value="外单引号内双引号-OK" type="button" onclick='alert("OK");' /><br />
<input value="外部不使用引号-OK" type="button" onclick=alert('OK');alert("OK"); /><br />
<input value="HTML转义字符"(& # 3 4 ;)-OK" type="button" onclick="alert("OK");" /><br />
<input value="HTML转义字符'(& # 3 9 ;)-OK" type="button" onclick="alert('OK');" /><br />
<input value="HTML转义字符"(& # x 2 2 ;)-OK" type="button" onclick="alert('OK');" /><br />
<input value="HTML转义字符'(& # x 2 7 ;)-OK" type="button" onclick="alert('OK');" /><br />
<input value="HTML转义字符"(& q u o t ;)-OK" type="button" onclick="alert("OK");" /><br />
<input value="HTML转义字符'(& a p o s ;)-IE错误" type="button" onclick="alert('OK');" /><br />
<input value="其它\\-错误" type="button" onclick="alert(\\"OK\\");" /><br />
<input value="其它\& # 3 4 ;-错误" type="button" onclick="alert(\"OK\");" /><br />
</body>
</html>追问

两者之间真的没有一点区别吗?

温馨提示:内容为网友见解,仅供参考
第1个回答  2013-02-22
相互嵌套,看谁在最外面;但是双引号不能嵌套双引号,需要转义,同理
第2个回答  2013-02-23
双引号 和单引号 都是一样的,
用双引号开头就要用双引号结束,
用单引号开头就要用单引号结束,
单引号中可以嵌套双引号,
双引号中可以嵌套单引号,
第3个回答  2013-02-26
没什么区别,只有在嵌套时,
如果外面是双引号,里面必须为单引号,
如果外面是单引号,里面必须为双引号。

Javascript使用单引号还是双引号哪个更好?你习惯使用哪种?-前端开发自 ...
1. 输入单引号比双引号更简单快捷,有助于提高编程效率。2. 在HTML与JavaScript中分别使用单引号和双引号,避免冲突,操作更为便利。3. 开源项目中普遍采用单引号,形成一致的代码风格。4. 单引号在浏览器中的编译速度通常较快。5. 与PHP等语言保持一致,利于统一编码规范。6. 单引号可避免某些特殊字...

JavaScript中单引号和双引号的区别和用法
1.双引号会搜索引号内的内容是不是有变量,有则输出其值,没有则输出原有内容。所以输出纯字符串的时候用单引号比双引号效率高,因为省去检索的过程。2. 双引号不能包含双引号 比如 在程序中$("div").html("");这里面的style 后就不能跟着双引号。要用单引号 ...

javascript中字符串变量使用单引号和双引号的利弊?
其次,单引号与双引号在JavaScript中并无本质区别。然而,某些情况下使用单引号可以避免字符串中出现的特殊字符引起的混淆。例如,单引号在处理包含多个单引号的字符串时更为方便。在PHP中,使用 'str'.$var.'ing' 的方式可以将变量插入到字符串中,同样地,JavaScript中也使用类似的语法。在前端开发中,...

js里面的单引号和双引号有什么区别??
js里面的单引号和双引号在jquery或者js中拼接字符串时是没有区别的,都可以被成功解析成字符串。从代码编译的角度说的话,单引号在JS中被浏览器(IE,Chrome,Safari)编译的速度更快(在FireFox中双引号更快)。而且单引号和双引号可以混合使用,但混合使用时需要注意。情况一般出现在js拼接字符串里面,...

js中,单引号和双引号有什么区别
就javascript本身而言,单引号双引号是没有区别的,但是使用时必须要统一;因为,javascript中不区分单引号和双引号;所以,哪个方便就用哪个。可在html中使用双引号,javascrip中使用单引号,这样就不会冲突,用起来也方便。简单的使用例子如下:var str = "123";\/\/正确 var str = '123';\/\/正确 var...

在js中'与"的区别
在js中单引号和双引号没有区别,都可以表示字符或字符串。但是它们必须成对出现,不能前面用一个单引号,后面用一个双引号,这样会报错。一般情况下,建议优先使用单引号包含字符串,这样做有几个好处:html中标签的属性是用双引号包裹,在js中如果要动态输出html内容,则用单引号将整体html代码包裹起来...

Javascript使用单引号还是双引号哪个更好?你习惯使用哪种?-前端开发自 ...
1. **输入便利性**:单引号输入更简单快捷,长期大量输入代码可有效提高效率,节省时间。以每日输入1000个引号为例,一年内可节省36万多次shift键操作。2. **兼容性**:在HTML中使用双引号,在JavaScript中使用单引号,避免两者间的冲突,使得代码编写和维护更为方便。3. **开源代码习惯**:许多开源...

Javascript单引号双引号&符号
下同。这句话的双引号 是值内容,单引号是sql数据库语句固定的 语法结构,比如 insert into student (studentname,studentpassword,sex,class,studentnumber) values ('张华','12345','男','3班',''),单引号构成完整的sql语句。&符合是 变量和变量的连接相加,或者 字符串和变量字符串相加。

单引号和双引号的区别
2、中文输入法:单引号和双引号的使用没有严格的规则,当引用的内容较长或包含多句话时,使用双引号;当引用的内容较短或只包含一句话时,可以使用单引号。3、编程语言:单引号和双引号也有不同的用途,例如在html中,双引号用于属性值,而单引号用于字符实体,在javascript中,双引号用于字符串,而单...

jquery 单引号和双引号的区别及使用注意
在js中单引号和双引号都是一样的,平时使用的时候尽量用单引号,只有碰到嵌套的时候才会同时用两种引号,感兴趣的朋友可以了解下 可以执行的语法:$("ul li a").filter(":contains('佳能'),:contains('松下'),:contains('卡西欧')").css("color","red");错误的语法:$("ul li a").filter...

相似回答