es6模板字符串
var arr = [1,2,3]; `xxx ${arr} xxx`//xxx 1,2,3 xxx
为什么说html字符串拼接很恶心呢,主要有以下几点:
专注于为中小企业提供成都做网站、网站建设服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业巩义免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了近1000家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。
- 传统的字符串拼接不能正常换行
- 传统的字符串拼接不能友好的插入变量
- 传统的字符串拼接不能友好的处理单引号、双引号互相嵌套的问题。
es6的模板字符串解决了以上问题
es6 使用``(windows键盘英文输入法下tab键上面那个键)来定义一个字符串。
var s = `hello world`
我们通常这样拼接html字符串。
var html = '
- '+
'
- 1 '+ '
- 2 '+ '
如果html标签里面有其他的引号,那就更恶心了,但是,使用es6,只需要这要就ok了。
var html = `
- 1
- 2
在windows键盘上,``是英文输入法下tab按键上面那个键。
它同样支持变量的嵌套,甚至功能更加强大
{}里面可以插入任何js表达式,还可以是一个对象、数组,甚至是一个函数。
对象或者数组会调用它们的toString()方法
var obj = {a:1,b:2}; `xxx ${obj} xxx`//xxx [object Object] xxx
var s1 = `hello vue`; `xxx ${s1} xxx` //xxx hello vue xxx
函数分两种情况:
- 函数本身,同样会调用它的tostring()方法
- 直接调用函数,则输出函数的返回值
var fn1 = function(){ console.log('hello vuex'); } var fn2 = function(){ return 'hello vue-router' } `xxx ${fn1}`//xxx function fn(){....} `xxx ${fn1()}`//xxx underfind `xxx ${fn2()}`//xxx hello vue-router
如果{}里面的变量是个不存在的变量呢?
标题名称:es6模板字符串
浏览路径:http://myzitong.com/article/pehhpd.html