JavaScript单引号和双引号的区别

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		<script>
			//全局函数直接调用,不需要对象来调用
			var s = "alert('1')";//alert窗口输出1
			var s = 'alert("1")';//alert窗口输出1
			eval(s);//计算JavaScript字符串,并把它作为脚本代码来执行
		</script>
	</head>
	<body>
	</body>
</html>
JS中的单引号和双引号其实没啥区别,看你自己习惯了。但若双引号中再使用双引号,我们可采取"外双内单"或者"外单内双"的格式;如果需要的是双引号本身,则只能是"外单内双":

HTML中的单引号与双引号很简单,就是两个字符实体:
显示      描述         实体名称    实体编号
"     双引号、引号      &quot;      &#34;
'     单引号、撇号      &apos;      &#39;
x
 
1
显示      描述         实体名称    实体编号
2
"     双引号、引号      &quot;      &#34;
3
'     单引号、撇号      &apos;      &#39;
JS中的单引号和双引号其实没啥区别,看你自己习惯了。 但若双引号中再使用双引号,我们可采取 "外双内单" 或者 "外单内双" 的格式;如果需要的是双引号本身,则只能是"外单内双":
console.log("包'青'天");    //包'青'天
console.log('包"青"天');    //包"青"天
console.log("包"青"天");    //错误
x
1
console.log("包'青'天");    //包'青'天
2
console.log('包"青"天');    //包"青"天
3
console.log("包""天");    //错误
或者像JAVA中那样,用 反斜杠\ 来禁止解析双引号:
console.log("包\"青\"天");    //包"青"天
 
1
console.log("包\"青\"天");    //包"青"天

一个容易混淆的地方

比如在一个网页中的按钮,写onclick事件的处理代码,不小心写成如下:
<input type="button" onclick="alert("弹窗")" /> -------------------不正确
 
1
<input type="button" onclick="alert("弹窗")" /> -------------------不正确
提示出错后,再漫不经心地改为:
<input type="button" onclick="alert(\"弹窗\")" /> ----------------不正确
 
1
<input type="button" onclick="alert(\"弹窗\")" /> ----------------不正确
结果还是出错。这时,我就想不通了,虽然我知道最直接的解决方法是写成这样:
<input type="button" onclick="alert('弹窗')" />  -------------------正确
<input type="button" onclick='alert("弹窗")' />  -------------------正确
1
<input type="button" onclick="alert('弹窗')" />  -------------------正确
2
<input type="button" onclick='alert("弹窗")' />  -------------------正确
但为什么JS中的转义字符 \ 没有效果了呢?

这是因为,这段代码还是归于HTML的管辖范围,所以转义字符应该使用HTML的,而不是javascript的:
<input type="button" onclick="alert(&quot;双引号&quot;);" /> -------------------正确
<input type="button" onclick="alert(&quot;双引号&#34;);" /> -------------------正确,【&quot;】和【&#34;】没任何区别

<input type="button" onclick="alert(&apos;单引号&#39;);" /> -------------------正确
1
<input type="button" onclick="alert(&quot;双引号&quot;);" /> -------------------正确
2
<input type="button" onclick="alert(&quot;双引号&#34;);" /> -------------------正确,【&quot;】和【&#34;】没任何区别
3
4
<input type="button" onclick="alert(&apos;单引号&#39;);" /> -------------------正确

### 回答1: 在 JavaScript 中,单引号双引号没有本质的区别,可以随意使用。不过,为了代码可读性一致性,通常都使用单引号双引号作为字符串的引号。如果字符串中已经包含了一种类型的引号,则可以使用另一种类型的引号来定义字符串,以避免转义。例如: ``` var string1 = 'This is a string.'; var string2 = "This is also a string."; var string3 = "This string contains a 'single quote' character."; var string4 = 'This string contains a "double quote" character.'; ``` ### 回答2: 在JavaScript中,单引号双引号都可用于表示字符串。它们之间的主要区别单引号双引号在语法上没有任何区别,但可以用于不同的情景约定。 首先,使用单引号双引号不会影响字符串的功能,只是为了方便开发人员对代码进行书写阅读。 其次,当字符串本身包含引号时,可以使用另一种引号来定义字符串,以避免冲突并简化代码书写。例如: let str1 = "This is a 'string'."; let str2 = 'This is a "string".'; 在上述例子中,使用不同的引号来定义字符串,使得字符串中的引号与定义字符串的引号分开,使代码更加简洁易读。 此外,还存在一些约定俗成的规范,例如在HTML中,属性值通常使用双引号,而JavaScript中的字符串通常使用单引号。这只是一种约定,没有强制要求,但在开发共享代码或团队合作时,遵循这些约定可以提高代码的一致性可读性。 总之,单引号双引号JavaScript中的使用没有功能上的区别,只是为了方便约定的不同。根据需要个人偏好选择使用哪种引号来定义字符串。 ### 回答3: 在JavaScript中,单引号(')双引号(")都可以用来声明字符串。它们之间的不同主要体现在两个方面:引号的嵌套转义字符的使用。 首先,在字符串中可以使用单引号包围双引号,或者使用双引号包围单引号,这样就可以避免引号的嵌套问题。例如,使用单引号声明的字符串中可以包含双引号,反之亦然。这样一来,在编写包含引号的字符串时就更加灵活方便。 其次,转义字符在单引号双引号中的使用略有不同。在双引号字符串中,如果需要在字符串中使用双引号本身,可以通过转义字符(\)来实现。例如,'"Hello, world!"'中的双引号需要通过转义字符进行转义。而在单引号字符串中,则可以直接使用双引号,无需转义。同样地,在单引号字符串中使用单引号时,无需转义字符,而在双引号字符串中则需要转义。 总结起来,单引号双引号JavaScript中用来声明字符串时,在引号的嵌套转义字符的使用上有所不同。两者都可以用来声明字符串,但在特定的情况下可能更适合使用一种引号。选择哪种引号主要取决于个人的编码风格需求。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值