【ES6】模板字符串

模板字符串

  • ES5 中我们表示字符串的时候使用''或者""
  • 在 ES6 中,我们还有一个东西可以表示字符串,就是``(反引号)
let str = `hello world`;
console.log(typeof str)	//string

1. 使用方法

  • 模板字符串可以换行书写
// 这个单引号或者双引号不能换行,换行就会报错了
let str = 'hello world';
// 下面这个报错了
let str2 = 'hello 
world';
//反引号就不会报错
let str3 = `hello 
world`;
  • 模板字符串会保留空格缩进换行
let str1 = `hello 
world`;
let str2 = `hello world`;
let str3 = `  hello world`;
console.log(str1);
console.log(str2);
console.log(str3);

在这里插入图片描述

  • 在模板字符串中需要使用反引号,则前面要用反斜杠\转义。
let str = `hello\`world`;
console.log(str);	// hello`world
  • 模板字符串可以互相嵌套
let arr = (addrs) => `
  <table>
  ${addrs.map((addr) => `
    <tr><td>${addr.first}</td></tr>
    <tr><td>${addr.last}</td></tr>
  `).join('')}
  </table>
`;

2. 嵌入变量

// ES5 需要使用字符串拼接变量的时候
let num = 100;
let str = 'hello' + num + 'world' + num;
console.log(str);	//hello100world100

// 直接写在字符串里面不好使
let str2 = 'hellonumworldnum';
console.log(str2); // hellonumworldnum
  • ${}就是用来书写变量的位置
//模板字符串拼接变量
let num = 100;
let str = `hello${num}world${num}`;
  • ${}里面可以插入js 表达式
let x = 1;
let y = 2;

let arr1 = `${x} + ${y} = ${x + y}`
let arr2 = `${x} + ${y * 2} = ${x + y * 2}`

let obj = {x: 1, y: 2};
let arr3 = `${obj.x + obj.y}`

console.log(arr1);	// 1 + 2 = 3
console.log(arr2);	// 1 + 4 = 5
console.log(arr3);	// 3
  • ${}里面可以调用函数
function fn() {
  return "Hello World";
}
let arr = `js ${fn()} nb`
console.log(arr);	// js Hello World nb
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一颗不甘坠落的流星

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值