位置: 编程技术 - 正文

浅谈ES6 模板字符串的具体使用方法(es6 文档)

编辑:rootadmin

推荐整理分享浅谈ES6 模板字符串的具体使用方法(es6 文档),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:es6模板字符串,es6模板字符串,es6的内容,es6写法,es6模板字符串,es6 模板语法,es6模板字符串,es6的模板字符串新特性,内容如对您有帮助,希望把文章链接给更多的朋友!

写在前面

关于 ES6, 也终于在 年的 7 月 号尘埃落定了。虽然说各大浏览器还没有全面的支持,不过这并不妨碍我们一颗想要撸一把的心。在后端,可以使用 Node.js(0.+)或 io.js, 前端的话,也可以使用Babel 或Traceur 进行语法预转义成 ES5使用 。

关于该系列(不知道能不能成为一个系列,总是各种懒),会没有规律的挑选一些内容来学习。欢迎大家积极纠错,留言探讨。

模板字符串(template strings)

用法

ES6 中引进的一种新型的字符串字面量语法 - 模板字符串。书面上来解释,模板字符串是一种能在字符串文本中内嵌表示式的字符串字面量。简单来讲,就是增加了变量功能的字符串。

先来看一下以前我们对字符串的使用:

而现在:

很简洁吧。

浅谈ES6 模板字符串的具体使用方法(es6 文档)

引一段 MDN 对于模板字符串的定义:

模板字符串使用反引号 () 来代替普通字符串中的用双引号和单引号。模板字符串可以包含特定语法(${expression})的占位符。占位符中的表达式和周围的文本会一起传递给一个默认函数,该函数负责将所有的部分连接起来。

而占位符${},可以是任意的 js 表达式(函数或者运算),甚至是另一个模板字符串,会将其计算的结果作为字符串输出。如果模板中需要使用$,{等字符串,则需要进行转义。

看个例子就明白了。

不同于普通字符串,模板字符串还可以多行书写,模板字符串中所有的空格,新行,缩进都会原样的输出在生成的字符串中。

而单纯的模板字符串还存在着很多的局限性。如:

不能自动转义特殊的字符串。(这样很容易引起注入攻击) 不能很好的和国际化库配合(即不会格式化特定语言的数字,日期,文字等) 没有内建循环语法,(甚至连条件语句都不支持, 只可以使用模板套构的方法)

标签模板(tagged template)

为此,引出了标签模板的概念。标签模板则是在反引号前面引入一个标签(tag)。该标签是一个函数,用于处于定制化模板字符串后返回值。就拿上面对特殊字符串举例。

标签函数会接收多个参数。

第一个参数是包含了字符串字面量(即那些没有变量替换的值)的数组 后面的参数是已经替换后的变量值

改一下例子1

tag 的参数则分别为 ['公司名:','简介:'], '丁香医生', '丁香医生是面向大众的科普性健康类网站'。

有了此类方法,就大大的增加了控制的权利。如上面说的国际化库甚至循环语句。

浏览器兼容性

服务器端, io.js 支持 浏览器端, FF+ , chrome + 移动端 IOS 8, Android 4.4 IE Tech Preview

本文链接地址:https://www.jiuchutong.com/biancheng/369746.html 转载请保留说明!

上一篇:微信小程序上传图片到服务器实例代码(微信小程序上传文件的API是)

下一篇:ES6中数组array新增方法实例总结(es6数组函数)

免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

鄂ICP备2023003026号

网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

友情链接: 武汉网站建设 电脑维修 湖南楚通运网络