es6 的模板字符串,使用更简洁
语法:
//模板字符串拼接
let str = `He is ${name},he is a ${occupation}`;
插入变量的时候也不需要再使用加号(+)了,而是把变量放入${ }即可。
${}中可以放js任意的表达式
1、运算表达式
2、可以是对象的属性
3、可以是函数的调用
标签模板
tagFn`他叫${name},身高${height}米。`;
//标签+模板字符串
//定义一个函数,作为标签
function tagFn(arr,v1,v2){
console.log(arr);
//结果:[ "他叫",",身高","米。" ]
console.log(v1);
//结果:张三
console.log(v2);
//结果:1.8
}
从代码的打印结果我们看到它们运行后对应的结果,arr的值是一个数组:[ "他叫" , ",身高" , "米。" ],而v1的值是变量name的值:“张三”,v2的值是变量height的值:1.8。
string的新增函数
1、repeat( )函数:将目标字符串重复N次,返回一个新的字符串,不影响目标字符串。
2、 includes( )函数:判断字符串中是否含有指定的子字符串,返回true表示含有和false表示未含有。第二个参数选填,表示开始搜索的位置
3、startsWith( )函数:判断指定的子字符串是否出现在目标字符串的开头位置,第二个参数选填,表示开始搜索的位置。
4、endsWith( )函数:判断子字符串是否出现在目标字符串的尾部位置,第二个参数选填,表示针对前N个字符
5、String.raw``;看函数名raw是未加工的的意思,正如这个函数的作用一样:返回字符串最原始的样貌,即使字符串中含有转义符,它都视而不见,直接输出。
ex:String.raw`hellow\nworld`
输出:hellow\nworld