ES6基础之——带标签的模版字符串Tagged Templates

可以在模版字符串的前面加标签,这个标签的作用是处理模版字符串里的字符和插入的那些值。
这里说的标签其实就是一个函数,不过用起来跟普通的函数还是有点区别。
例子:
let dessert = 'cake',
drink = 'tea'
let breakfast =kitchen `今天的早餐是${dessert}与${drink}!`;

//定义标签函数
function kitchen(strings,...values){ //Strings:模版字符串里每一部分的字符;...values:模版字符串里的值
console.log(strings); //["今天的早餐是","与","!""]
console.log(values); //["cake","tea"]
}
在标签里面可以分别处理一下这个字符串里的每一个部分,比如可以检查字符串里面是不是有不能够包含的东西、在货币的前面添加一个货币符号、去转换字符串里的html代码、去把这个字符串转换成其他的语言等等
正常输出模版字符串里的东西,我们可以这样:
function kitchen(strings,...values){
let result ='';
for(var i=0;i<values.length;i++){
result += strings[i]; //每次循环让result加上字符
result += values[i]; //每次循环让result加上模版字符串里的插值
}
result += strings[strings.length-1]; //result加上最后 一部分字符
return result;
}
console.log(breakfast) //今天的早餐是cake与tea!  
原文地址:https://www.cnblogs.com/fe-cherrydlh/p/11018984.html