JS中的单引号和双引号

简介: JS里面的单引号和双引号可以同时使用,但是要遵循一定的准则。最外面用了双引号了,那么里面就不能再用双引号了,因为引号是成双对的,浏览器读到一个双引号后,到第2个双引号时才算结束;同理,浏览器读到一个单引号后,必须要读到第二个单引号才算结束, 不管是单引号还是双引号,里面都可以套相反的引号,但是不可以双引号里面套单引号,这个单引号再套双引号,这是不行的。

JS里面的单引号和双引号可以同时使用,但是要遵循一定的准则。

最外面用了双引号了,那么里面就不能再用双引号了,因为引号是成双对的,浏览器读到一个双引号后,到第2个双引号时才算结束;同理,浏览器读到一个单引号后,必须要读到第二个单引号才算结束,

 

不管是单引号还是双引号,里面都可以套相反的引号,但是不可以双引号里面套单引号,这个单引号再套双引号,这是不行的。

 

如果在引号里面使用相同的引号,需要用 \ 转义。

单引号转义为\'

单引号转义为\"

 

单引号和双引号之间的字符串可以相加

'af'+"bvvv"+'dd'

输出 "afbvvvdd"

 

还有一种情况,,这里的单引号也是字符串的一部分

"<div class='con"+"tent'></div>"

输出 "<div class='content'></div>"

 

从代码编译的角度说的话,单引号在JS中被浏览器(IE,Chrome,Safari)编译的速度更快(在FireFox中双引号更快)。

 

来看一些案例

首先,单引号和双引号在各自单独用时是木有什么区别的,都可以,比如:

var a="你好";//双引号,变量a的内容是字符串  你好

var b='你好';//单引号,变量b的内容是字符串  你好

console.info(a===b);//输出true,它们本质都是一样的字符串

 

其次,单引号和双引号混合使用时,这时候要特别注意了,这种情况一般出现在js拼接字符串里面,或者html元素的属性里面,就以JS为例吧,都是一样的规则:单引号和双引号必须成双成对的出现,可以单引号在外面,也可以双引号在外面:

var a="'你好'";//这里变量a的内容就是字符串'你好',这里的单引号也是字符串的一部分

var b='"你好"';//这里变量b的内容就是字符串"你好",这里的双引号也是字符串的一部分

console.info(a===b);//输出false,它们不是一样的字符串

 

接下来来个稍微复杂点的,我们来看下字符串拼接:

var _html="<div class='content'></div>";/*这里是最外面用了双引号了,那么里面就不能再用双引号了,因为引号是成双对的,浏览器读到一个双引号后,到第2个双引号时才算结束;同理,浏览器读到一个单引号后,必须要读到第二个才算结束*/

//上面的代码也可以写作:_html='<div class="content"></div>';

//如果你只想用一种引号的话,你级需要对里面的引号进行**转义处理**,告诉浏览器里面的引号是一个字符串,而不是引号结束符,比如:

_html='<div class=\'content\'></div>';

 

再来个拼接字符串的:

var data={name:"小明",age:18};

var _html="<div class='info'>我的名字叫"+data.name+",我今年"+data.age+"岁了<div>"

console.info(_html);//我的名字叫小明,我今年18岁了

//很明显了,按照之前说的,引号在读到首个双引号字符串的时候,把它当做这个变量的

//内容开始处理,然后到第二个双引号那里结束,即: "<div class='info'>我的名字叫"

/*然后通过加号拼接变量 data.name,  拼接好了后继续用加号拼接字符串 ",我今年"

以此类推。。。 

 

一个特别复杂的例子

想要输出这段HTML

<template v-for="aodo in aodos">
      <li class="mui-table-view-cell" v-bind:fundcodeli="aodo.assetCode">
          <span class="column-a" v-text="aodo.assetName.substring(0,6)"></span>
          <span class="column-b" v-text="aodo.setupDate.substring(0,4)+'-'+aodo.setupDate.substring(4,6)+'-'+aodo.setupDate.substring(6,8)"></span>
          <span class="column-c" v-text="aodo.investType.substring(0, aodo.investType.length - 2)"></span>
          <span class="column-d mui-icon mui-icon-closeempty"></span>
    </li>
</template>

JS里面必须这样写:

var str="<template v-for='aodo in aodos'><li class='mui-table-view-cell' v-bind:fundcodeli='aodo.assetCode'><span class='column-a' v-text='aodo.assetName.substring(0,6)'></span><span class='column-b' v-text='aodo.setupDate.substring(0,4)"+'+"-"+'+"aodo.setupDate.substring(4,6)"+'+"-"+'+"aodo.setupDate.substring(6,8)'></span><span class='column-c' v-text='aodo.investType.substring(0, aodo.investType.length - 2)'></span><span class='column-d mui-icon mui-icon-closeempty'></span></li></template>";
fundListUl.innerHTML = str;

 

**总结下**:引号(同类型的引号,单引号和双引号是不同类型)是成双对的,在读第一个引号时开始,读到第二个结束,遇到第三个又开始,第四个又结束。。。;

不同类型引号之间可以嵌套,最多2层(当然通过转义可以继续往下套,但是因为可读性太差,不要这样做);

*/

 

相关文章
|
9月前
|
JavaScript 前端开发
javascript中html单双引号混排的解决方案
javascript中html单双引号混排的解决方案
44 0
|
XML JSON JavaScript
JavaScript、Json中的单引号、双引号
本篇稍微讲下单引号、双引号与JavaScript和JSON之间错综复杂的关系哈,不注意的话还真可能有点懵圈。 首先在JavaScript中,单引号、双引号意义相同,完事。猫哥也是时而用单引号,时而用双引号,现在倾向于使用双引号。
621 0
|
JavaScript 前端开发 程序员
好程序员web前端培训分享使用JavaScript正则表达式如何去掉双引号
  好程序员web前端培训分享使用JavaScript正则表达式如何去掉双引号,最近接了一个项目,项目需求需要用js正则表达式过滤掉页面文本域中值得双引号,其实解决办法很简单,下面把我写的代码分享给大家,有同样需求的朋友可以参考下。   具体的解决代码如下:
1192 0
|
JavaScript 前端开发 程序员
好程序员分享使用JavaScript正则表达式如何去掉双引号
  好程序员分享使用JavaScript正则表达式如何去掉双引号最近接了一个项目,项目需求需要用js正则表达式过滤掉页面文本域中值得双引号,其实解决办法很简单,下面把我写的代码分享给大家,有同样需求的朋友可以参考下。   具体的解决代码如下:
2776 0
|
JavaScript 前端开发 Java
JavaScript中的单引号和双引号
更多文章 访问我的博客:http://www.caoyong.xin:8080/blogger 今天来聊一聊单引号和双引号在JavaScript中的使用,做web的经常会在HTML中或者JavaScript中拼接字符串,这个时候就会用到单引号与双引号混合使用,如果使用不当还会造成意想不到的bug。
3305 0
|
JavaScript
在js里双引号里又加单引号的解决方案常用WdatePicker
EndTime: '', 或者如下:   EndTime: '',       就是说单引号要用:&quot;或者\'这个字符代替学习交流群:364976091
707 0
|
JavaScript 前端开发
输出到网页前台js代码中包含单引号的处理方法
描述:后台输出js到前台,如       //       var aStepData = new Array();   with (aStepData) {   push([3, 1,'./l.txt']);   push([6, 2,'3' 4'\'5 " ''']);       };   //]]>       由于js中包含单引号,导致js错误,因此需输出转义的单引号。
840 0
|
JavaScript 前端开发
Js参数值中含有单引号或双引号解决办法
function Display(LoginEmail, UserName, ID) {         alert(LoginEmail);     } 1.使用单引号传参:Test1 如果其中一个参数有一个值含有单引号,那么这个方法会出错.Test1  改进: 有单引号的加上\', OK。
1303 0
|
2月前
|
JavaScript
Node.js【GET/POST请求、http模块、路由、创建客户端、作为中间层、文件系统模块】(二)-全面详解(学习总结---从入门到深化)
Node.js【GET/POST请求、http模块、路由、创建客户端、作为中间层、文件系统模块】(二)-全面详解(学习总结---从入门到深化)
27 0
|
2月前
|
消息中间件 Web App开发 JavaScript
Node.js【简介、安装、运行 Node.js 脚本、事件循环、ES6 作业队列、Buffer(缓冲区)、Stream(流)】(一)-全面详解(学习总结---从入门到深化)
Node.js【简介、安装、运行 Node.js 脚本、事件循环、ES6 作业队列、Buffer(缓冲区)、Stream(流)】(一)-全面详解(学习总结---从入门到深化)
70 0