写在前面
在ES6中,JavaScript的字符串对象得到了许多有用的新方法。这些方法使得字符串操作更加方便和强大。以下是这些新方法的详细介绍和示例。
String.fromCodePoint()
String.fromCodePoint()
方法可以将一个或多个 Unicode 码点转换为字符串。例如:
console.log(String.fromCodePoint(0x1F600)); // "😀"
console.log(String.fromCodePoint(0x1F600, 0x1F64C)); // "😀🙌"
String.raw()
String.raw()
方法可以创建一个原始字符串,忽略所有的转义字符。例如:
const template = String.raw`Hello, ${name}!`;
console.log(template); // "Hello, ${name}!"
实例方法:codePointAt()
codePointAt()
方法返回指定索引处的 Unicode 码点。例如:
const str = "Hello";
console.log(str.codePointAt(0)); // 72
console.log(str.codePointAt(1)); // 101
实例方法:normalize()
normalize()
方法可以将字符串转换为 Unicode 规范化形式。例如:
const str = "café";
console.log(str.normalize("NFC")); // "café"
console.log(str.normalize("NFD")); // "café"
实例方法:includes(), startsWith(), endsWith()
这三个方法用于检查字符串中是否包含指定的子字符串。例如:
const str = "Hello, world!";
console.log(str.includes("world")); // true
console.log(str.startsWith("Hello")); // true
console.log(str.endsWith("world!")); // true
实例方法:repeat()
repeat()
方法可以将字符串重复指定的次数。例如:
const str = "Hello";
console.log(str.repeat(3)); // "HelloHelloHello"
实例方法:padStart(),padEnd()
这两个方法可以在字符串的开头或结尾添加指定的填充字符,直到达到指定的长度。例如:
const str = "Hello";
console.log(str.padStart(10, " ")); // " Hello"
console.log(str.padEnd(10, " ")); // "Hello "
实例方法:trimStart(),trimEnd()
这两个方法可以从字符串的开头或结尾删除空格。例如:
const str = " Hello, world! ";
console.log(str.trimStart()); // "Hello, world! "
console.log(str.trimEnd()); // " Hello, world!"
实例方法:matchAll()
matchAll()
方法可以返回一个迭代器,用于遍历字符串中所有匹配的正则表达式。例如:
const str = "The quick brown fox jumps over the lazy dog.";
const regex = /the/gi;
const matches = str.matchAll(regex);
for (const match of matches) {
console.log(match);
}
// Output: ["The", "the"]
实例方法:replaceAll()
replaceAll()
方法可以用来替换字符串中所有匹配的子字符串。例如:
const str = "The quick brown fox jumps over the lazy dog.";
console.log(str.replaceAll("the", "a")); // "a quick brown fox jumps over a lazy dog."
实例方法:at()
at()
方法可以用来获取字符串中指定索引处的字符。例如:
const str = "Hello";
console.log(str.at(0)); // "H"
console.log(str.at(1)); // "e"
实例方法:toWellFormed()
toWellFormed()
方法可以用来将一个可能包含不合法 Unicode 序列的字符串转换为一个合法的 Unicode 字符串。例如:
const str = "\u{D800}\u{DC00}"; // 不合法的 Unicode 序列
console.log(str.toWellFormed()); // "