在 ES6/7 标准中,String 类型得到了很多新的方法,本文将介绍这些新方法,包括其作用、用法,以及示例代码。这些方法中有些是对老方法的增强,可以让我们更方便得操作字符串,同时也有一些全新的方法,可以帮助我们更高效地处理字符串。
1. includes()
includes() 可以判断一个字符串是否包含另一个字符串,返回结果为布尔值。
用法:
str.includes(searchString[, position]);
其中,searchString 是要查找的字符串;position 是可选参数,表示在目标字符串中查找的起始位置。
示例代码:
let str = 'Hello, World!'; console.log(str.includes('Hello')); // true console.log(str.includes('world')); // false console.log(str.includes('o', 4)); // true
2. startsWith()
startsWith() 可以判断一个字符串是否以另一个字符串开头,返回结果为布尔值。
用法:
str.startsWith(searchString[, position]);
其中,searchString 是要查找的字符串;position 是可选参数,表示在目标字符串中查找的起始位置。
示例代码:
let str = 'Hello, World!'; console.log(str.startsWith('Hello')); // true console.log(str.startsWith('world')); // false console.log(str.startsWith('llo', 2)); // true
3. endsWith()
endsWith() 可以判断一个字符串是否以另一个字符串结尾,返回结果为布尔值。
用法:
str.endsWith(searchString[, length]);
其中,searchString 是要查找的字符串;length 是可选参数,表示在目标字符串中查找的起始位置。
示例代码:
let str = 'Hello, World!'; console.log(str.endsWith('World!')); // true console.log(str.endsWith('world')); // false console.log(str.endsWith('llo', 5)); // true
4. repeat()
repeat() 可以将一个字符串重复指定次数,返回结果为新的字符串。
用法:
str.repeat(count);
其中,count 是重复次数。
示例代码:
let str = 'Hello, World!'; console.log(str.repeat(2)); // Hello, World!Hello, World!
5. padStart() 和 padEnd()
padStart() 和 padEnd() 可以补全字符串的长度,返回结果为新的字符串。
用法:
str.padStart(targetLength [, padString]); str.padEnd(targetLength [, padString]);
其中,targetLength 是指定长度,不足则补全;padString 是可选参数,指定用于补全的字符串。
示例代码:
let str = 'Hello'; console.log(str.padStart(8, 'X')); // XXXHello console.log(str.padEnd(8, 'X')); // HelloXXX
6. trimStart() 和 trimEnd()
trimStart() 和 trimEnd() 可以去掉字符串开头或结尾的空白字符,返回结果为新的字符串。
用法:
str.trimStart(); str.trimEnd();
示例代码:
let str = ' Hello, World! '; console.log(str.trimStart()); // 'Hello, World! ' console.log(str.trimEnd()); // ' Hello, World!'
7. raw
raw 可以在处理模板字符串时使用,返回字符串的原始值,不会进行转义。
用法:
String.raw(string);
示例代码:
console.log(String.raw`Hello\nWorld!`); // 'Hello\nWorld!'
总结
ES6/7 标准增加了很多便捷的字符串处理方法,可以让我们更方便地操作字符串,从而提高工作效率。但是,CSS3 里面也有很多的新属性和新特性,可以使得我们的前端效果更加的炫酷,也可以极大的提高用户体验。我们需要不断学习新技术,提升自己的专业水平,才能在激烈的竞争中站稳脚跟。
来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/65839836d2f5e1655de74084