ES6学习教程之模板字符串详解


Posted in Javascript onOctober 09, 2017

模板字符串(template strings)

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

ES6为我们提供了模板字符串,语法使用反引号`。模板字符串具有以下三个优点:

  • 多行文本
  • 字符串中插入变量
  • 字符串中插入表达式

基本语法

模板字符串和 ES5的字符串的声明一样。

// ES5
var name = 'xixi';
console.log(name);// xixi

// ES6
let name4ES6 = `一步`;
console.log(name4ES6);// 一步

多行文本

在Jquery 盛行的年代,我们经常会拼接 html 片段再进行节点替换。写一段 ES5的代码大家体会一下:

var str = '<html>'
+ '<div>啦拉拉</div>'
+ '<div>xixixi</div>'
+ '</html>';
console.log(str);// <html><div>啦拉拉</div><div>xixixi</div></html>

ES6支持多行文本,上面的代码实现起来就容易多了。

let str4ES6 = `<html>
 <div>啦拉拉</div>
 <div>xixixix</div>
</html>`;

console.log(str4ES6);

可以插入变量或表达式

// ES5
var name = 'xixi';
var age = 27;
var info = 'my name is ' + name + ' , age is ' + age + '.';
console.log(info);// my name is xixi , age is 27.

ES6的模板字符串实现起来就容易好多。关键语法${},其中可以插入任何的 js 表达式。

let name = 'xixi';
let age = 27;

let info = `my name is ${name}, my age is ${age}. just a test ${1 + 10}!`;
console.log(info);// my name is xixi, my age is 27. just a test 11!

总结

ES6模板字符串就是这么的简单这么的好用。

好了,以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Javascript 相关文章推荐
firefox事件处理之自动查找event的函数(用于onclick=foo())
Aug 05 Javascript
jQuery获取Select选择的Text和Value(详细汇总)
Jan 25 Javascript
JavaScript中判断对象类型的几种方法总结
Nov 11 Javascript
php is_numberic函数造成的SQL注入漏洞
Mar 10 Javascript
一个简单的动态加载js和css的jquery代码
Sep 01 Javascript
Vuejs第九篇之组件作用域及props数据传递实例详解
Sep 05 Javascript
Javascript基础回顾之(二) js作用域
Jan 31 Javascript
新手快速入门JavaScript装饰者模式与AOP
Jun 24 Javascript
详解微信小程序支付流程与梳理
Jul 16 Javascript
js blob类型url的视频下载问题的解决
Nov 29 Javascript
JavaScript实现联动菜单特效
Jan 07 Javascript
react使用CSS实现react动画功能示例
May 18 Javascript
ES6学习教程之块级作用域详解
Oct 09 #Javascript
JavaScript实现短信倒计时60s
Oct 09 #Javascript
ES6学习教程之对象字面量详解
Oct 09 #Javascript
AngularJS中的路由使用及实现代码
Oct 09 #Javascript
React如何利用相对于根目录进行引用组件详解
Oct 09 #Javascript
React Native中的RefreshContorl下拉刷新使用
Oct 09 #Javascript
JS实现的全排列组合算法示例
Oct 09 #Javascript
You might like
PHP学习笔记之二
2011/01/17 PHP
不支持fsockopen但支持culr环境下下ucenter与modoer通讯问题
2011/08/12 PHP
PHP利用APC模块实现文件上传进度条的方法
2015/01/26 PHP
php post大量数据时发现数据丢失问题解决方法
2015/06/20 PHP
浅析php中array_map和array_walk的使用对比
2016/11/20 PHP
在JQuery dialog里的服务器控件 事件失效问题
2010/12/08 Javascript
nodejs 后缀名判断限制代码
2011/03/31 NodeJs
jQuery多级弹出菜单插件ZoneMenu
2014/12/18 Javascript
JavaScript节点及列表操作实例小结
2015/08/05 Javascript
jquery实现浮动在网页右下角的彩票开奖公告窗口代码
2015/09/04 Javascript
JS折半插入排序算法实例
2015/12/02 Javascript
AngularJS基础 ng-cut 指令介绍及简单示例
2016/08/01 Javascript
jQuery实现优雅的弹窗效果(6)
2017/02/08 Javascript
js实现水平滚动菜单导航
2017/07/21 Javascript
Angularjs实现上传图片预览功能
2017/09/01 Javascript
基于vue.js实现的分页
2018/03/13 Javascript
jQuery实现鼠标点击处心形漂浮的炫酷效果示例
2018/04/12 jQuery
vue里如何主动销毁keep-alive缓存的组件
2019/03/21 Javascript
js实现碰撞检测
2021/01/29 Javascript
Python 多核并行计算的示例代码
2017/11/07 Python
Python实现的查询mysql数据库并通过邮件发送信息功能
2018/05/17 Python
Python实现图片添加文字
2019/11/26 Python
python 实现让字典的value 成为列表
2019/12/16 Python
tensorflow入门:TFRecordDataset变长数据的batch读取详解
2020/01/20 Python
python 实现性别识别
2020/11/21 Python
HTML5不支持frameset的两种解决方法
2016/11/14 HTML / CSS
HTML5 LocalStorage 本地存储刷新值还在
2017/03/10 HTML / CSS
伊莱克斯(Electrolux)俄罗斯网上商店:瑞典家用电器品牌
2021/01/23 全球购物
大学生素质拓展活动方案
2014/02/11 职场文书
出国留学计划书
2014/04/27 职场文书
触电现场处置方案
2014/05/14 职场文书
2014年财务经理工作总结
2014/12/08 职场文书
2015年社区文体活动总结
2015/03/25 职场文书
python 统计代码耗时的几种方法分享
2021/04/02 Python
Python 实现绘制子图及子图刻度的变换等问题
2021/05/31 Python
Win10本地连接不见了怎么恢复? win10系统电脑本地连接不见了解决方法
2023/01/09 数码科技