Skip to content
On this page

字符串

模板字符串

模板字符串用反应号(数字 1 左边的那个建)包含,用${}括起来

javascript
var name = 'wjw',age = 8;
let desc = `${name} is ${age} old!`;
console.log(desc);

//所有模板字符串的空格和换行,都是被保留的
var str = `<ul>
<li>a</li>
<li>b</li>
</ul>`;
console.log(str);
1
2
3
4
5
6
7
8
9
10

其中的变量会用变量的值替换掉

javascript
function replace(desc){
	return desc.replace(/\$\{([^}]+)\}/g,function(matched,key){
    return eval(key);
  });
}
1
2
3
4
5

带标签的模板字符串

可以在模板字符串的前面添加一个标签,这个标签可以去处理模板字符串 标签其实就是一个函数,函数可以接收两个参数,一个是 strings 就是模板字符串里的每个部分的字符 还有一个参数可以使用 rest 的形式 values, 这个参数里面是模板字符串里的值。

javascript
var name = 'wjh',age = 8;
function desc(strings,...values){
    console.log(strings,values);
}
desc`${name} is ${age} old!`;
1
2
3
4
5

字符串新方法

  • includes():返回布尔值,表示是否找到了参数字符串。
  • startsWith():返回布尔值,表示参数字符串是否在源字符串的头部。
  • endsWith():返回布尔值,表示参数字符串是否在源字符串的尾部。
javascript
var s = 'wjh';
s.startsWith('w') // true
s.endsWith('h') // true
s.includes('j') // true
1
2
3
4

第二个参数,表示开始搜索的位置

javascript
var s = 'wjh';
console.log(s.startsWith('j',2)); // true
console.log(s.endsWith('j',2)); // true
console.log(s.includes('j',2)); // false
1
2
3
4

endsWith 的行为与其他其他方法有所不同。它针对前 n 个字符,而其他方法是从第几位开始到字符串结束

repeat

repeat 方法返回一个新字符串,表示将原字符串重复 n 次。

 'x'.repeat(3);
 'x'.repeat(0);
1
2
沪ICP备20006251号-1