欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

02-模板字符串

程序员文章站 2022-06-05 14:31:52
传统的JavaScript语言,输出模板通常是这样的写的。 上面这种写法相当繁琐不方便,ES6 引入了模板字符串解决这个问题。 模板字符串(template string)是增强版的字符串,用反引号(`)标识。它可以当作普通字符串使用,也可以用来定义多行字符串,或者在字符串中嵌入变量 上面代码中的模 ......

传统的javascript语言,输出模板通常是这样的写的。

$('#result').append(
  'there are <b>' + basket.count + '</b> ' +
  'items in your basket, ' +
  '<em>' + basket.onsale +
  '</em> are on sale!'
);

上面这种写法相当繁琐不方便,es6 引入了模板字符串解决这个问题。

$('#result').append(`
   there are <b>${basket.count}</b> items
    in your basket, <em>${basket.onsale}</em>
    are on sale!
 `);

 模板字符串(template string)是增强版的字符串,用反引号(`)标识。它可以当作普通字符串使用,也可以用来定义多行字符串,或者在字符串中嵌入变量

// 普通字符串
`in javascript '\n' is a line-feed.`

// 多行字符串
`in javascript this is
 not legal.`

console.log(`string text line 1
string text line 2`);

// 字符串中嵌入变量
let name = "bob", time = "today";
`hello ${name}, how are you ${time}?`

 

 上面代码中的模板字符串,都是用反引号表示。如果在模板字符串中需要使用反引号,则前面要用反斜杠转义。

let greeting = `\`yo\` world!`;

如果使用模板字符串表示多行字符串,所有的空格和缩进都会被保留在输出之中。

$('#list').html(`
<ul>
  <li>first</li>
  <li>second</li>
</ul>
`);