美文网首页
js es6 模板字符串

js es6 模板字符串

作者: 天空蓝雨 | 来源:发表于2020-04-27 14:05 被阅读0次

参考mdn
https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/template_strings

模板字面量 是允许嵌入表达式的字符串字面量。你可以使用多行字符串和字符串插值功能

可能你会问,这和普通的字符串拼接有什么不一样。也许比较优雅。类似py 的format 。代码优雅才是王道。写的乱自己都看不懂

  • 基本语法

`string text`

`string text line 1
 string text line 2`

`string text ${expression} string text`

tag `string text ${expression} string text`
  • 描述

模板字符串就是用 代替普通的 ' 和 " (模板内需要 要用 \)
${exp}.. 表达式里面可以包含 变量的占位符

  • 多行字符串

普通多行字符串可能要用 \n 来实现。 模板字符串不需要,你的回车会识别成换行符

  • 插入表达式

var a = 5;
var b = 10;
console.log(`Fifteen is ${a + b} and
not ${2 * a + b}.`);
// "Fifteen is 15 and
// not 20."
  • 嵌套模板

模板文字而没有嵌套

const classes = `header ${ isLargeScreen() ? '' :
    (item.isCollapsed ? 'icon-expander' : 'icon-collapser') }`;

嵌套模板字面量中

const classes = `header ${ isLargeScreen() ? '' :
 `icon-${item.isCollapsed ? 'expander' : 'collapser'}` }`;

由此可见,嵌套是为了提取公共部分,简化表达式的。

  • 带标签的模板字符串

高级用法是 标签模板字符串
标签就是函数名,他返回一个字符串。
用法就是

function myTag(strings,exp0,exp1...){
return exp0 + strings[0] + strings[1]  + (exp1>1 ? exp:1)
}
var age = 10;
var name = "yxl";
myTag`年龄 ${name} 是 ${age} `
结果:
yxl 年龄是 10

上面的结果可以看出 函数名后面紧跟模板字符串。函数第一个参数(这里是strings )是一个数组,他的值是模板字符串按照占位符分割的其他普通字符串的数组。后面的不定长参数是 占位符按照顺序传进去。

这样一个函数返回什么值,就完全靠你的函数定制了。比较灵活。
就这么多吧

相关文章

  • React最佳入门

    起步 ES6 默认参数与rest sprea(展开) 模板字符串 解构赋值 类 ES6模块化 a.js b.js ...

  • ES6模版字符串

    初探ES6:字符串模板 && 标签模板 关键词:``,${} 字符串模板: 在ES6之前我们要在html或者con...

  • 个人面试总结

    JS Q:常用es6语法A:let、const、promise、模板字符串、解构赋值、拓展运算符、箭头函数 Q:有...

  • 21.模板字符串和标签模板字符串

    ES6新增了模板字符串,用于字符串拼接 ES6新增了标签字符串 标签模板字符串执行结果: 函数的第一个参数为数组,...

  • ES6常用新特性

    ES6新特性介绍 模板字符串 模板字符串实现字符串拼接 模板字符串实现多行字符串 结构赋值 对象的解构赋值 数组的...

  • Node.js 模块机制及模块化特点

    一. Node.js对es6语法支持特性 let const声明,箭头函数,模板字符串,类class 不支持es6...

  • ES6中的模板字符串的基本用法

    ES6的到来,使得JS字符串得到了较大的扩展,其中新增了模板字符串的用法。 一、先与之前的字符串拼接做一个对比 在...

  • es6学习中的一些领悟1

    其实已经在不断使用es6了,但是还是想系统的了解下这个新“js”,所以看起了阮老师的es6科普教程。模板字符串(既...

  • TypeScript字符串新特性

    多行字符串 1. 多行字符串 其中 `` 用来定义 ES6 中的模板字符串,${expr} 用来在模板字符串中嵌...

  • es6、es7常用特性

    1、模板字符串模板字符串 不使用ES6 使用+号降变量拼接喂字符串 例:var name ='My name is...

网友评论

      本文标题:js es6 模板字符串

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