美文网首页
ES6模版字符串

ES6模版字符串

作者: chenshuwen | 来源:发表于2018-03-13 10:50 被阅读0次

初探ES6:字符串模板 && 标签模板

关键词:``,${}

字符串模板:

在ES6之前我们要在html或者console.log出一个带有变量的语句时我们是这样写的:

let age = 22
console.log( 'My age is ' + age )

这样写的坏处在于不直观,而且如果字符串中有符号:"和'时候,往往需要转义:
ES6提供了字符串模板相当于加强版的字符串,我们可以这样写:

let age = 22;
console.log( `My age is ${ age }` )

在传统JS中字符串如果要换行的话需要'\n',而字符串模板可以省略掉:

document.body.innerHTML = `My age 
     is ${age}

示例点击

所以,字符串模板与以前相比而言,把字符串的''换成了``并且里面的变量不需要拼接,只需要用${}去定义里面的变量。

${}

${}里面可以是调用函数的返回值,或者你也可以做一些变量上的操作。

function sayAge (){
   let age = 22;
    return age;
}
console.log( `My age is ${  sayAge() }` )//My age is 22

//也可以做一些操作:
let a1 = 22;
let a2 = 1;
console.log( `My age is ${  a1+a2  )//My age is 23

标签模板:

标签模板是字符串模板的加强版:
标签模板是让字符串模板跟在函数名后面,该函数来处理字符串模板:

let age = 22;
   var tag = function(arr,arg){
     console.log(arr);
     console.log(arg) 
   }
   tag`my age is ${ age }`;

示例点击
从上可以看出,arr是一个数组,存的是字符串里面可以处理非变量的内容,而后面的参数列表一次是你的每一个变量。

应用:

  1. 过滤HTML字符串,防止用户恶意输入。
  2. 多语言的转换。

相关文章

  • String

    字符串的遍历器接口 ES6为字符串添加了遍历器接口,使得字符串可以被for...of循环遍历 模版字符串 模版字符...

  • es6模版字符串`${ }`

    ES6 的 模版字符串(Template Strings ) 就是用占位符的方式来拼接字符串

  • 模版字符串

    ES6中提供了模版字符串,****用`(反引号)标识,用${}将变量括起来。上面的例子可以用模版字符串写成下面这样...

  • 模版字符串—ES6

    今天在项目中用到了模版字符串,在此感谢小马同学的知识分享。 1、ES6中提供的模版字符串 在使用模板字符串之前我们...

  • React设置多个classNames

    方法一:ES6模版字符串 方法二:join("") 方法三:classnames(需要下载classnames)

  • 前端高频面试题

    ES6语法:let const 箭头函数 Map Set 字符串模版 块级 数组与字符串[https://deve...

  • 字符串模板

    ES5下必须用+js+这样的形式进行拼接。ES6新增了字符串模版。字符串模版不再使用‘xxx’这样的单引号,而是换...

  • 每日总结

    每日单词 ES6模版字符串 语法:模板字符串(Template String)是增强版的字符串,用反引号(`)标识...

  • Typescript 特性

    Typescript是根据es6来扩展的js 的超集。 字符串的特性有: 多行字符串: 字符串模版 可以使用$+大...

  • 面试题(2017~now)

    ES6 解构赋值/ 模版字符串 / 箭头函数 / 模块 / 扩展运算符 / 函数默认参数 / Promise/ a...

网友评论

      本文标题:ES6模版字符串

      本文链接:https://www.haomeiwen.com/subject/lzoafftx.html