前言
ECMAScript 2015(ES6)引入了许多新特性,其中字符串方法是比较常用的一种。在这篇文章里,我们将会学习一些常见的字符串方法,以及它们的使用和实际场景。
模板字面量
在 ES6 之前,字符串的拼接需要通过加号(+)来实现,例如:
var name = 'Tom'; var age = 20; console.log('My name is ' + name + ' and I am ' + age + ' years old.'); // 输出: My name is Tom and I am 20 years old.
而在 ES6 中,我们可以使用模板字面量(Template Literal
)来更加方便地进行字符串拼接,例如:
const name = 'Tom'; const age = 20; console.log(`My name is ${name} and I am ${age} years old.`); // 输出: My name is Tom and I am 20 years old.
需要注意的是,使用模板字面量时需要使用反引号(`)。
includes()
includes()
方法用于判断字符串是否包含某个子字符串,返回布尔值。例如:
const str = 'hello world'; console.log(str.includes('world')); // 输出: true console.log(str.includes('goodbye')); // 输出: false
startsWith() 和 endsWith()
startsWith()
和 endsWith()
分别用于判断字符串是否以某个子字符串开头或结尾,返回布尔值。例如:
const str = 'hello world'; console.log(str.startsWith('hello')); // 输出: true console.log(str.endsWith('world')); // 输出: true console.log(str.startsWith('world')); // 输出: false console.log(str.endsWith('hello')); // 输出: false
repeat()
repeat()
方法用于将字符串重复指定次数,并返回新的字符串。例如:
const str = 'hello'; console.log(str.repeat(3)); // 输出: hellohellohello
padStart() 和 padEnd()
padStart()
和 padEnd()
方法用于在字符串的开头或结尾添加指定数量的字符,使字符串达到指定长度,返回新的字符串。例如:
const str = 'hello'; console.log(str.padStart(10, '123')); // 输出: 123123hello console.log(str.padEnd(10, '123')); // 输出: hello12312 console.log(str.padStart(8)); // 输出: hello
需要注意的是,如果填充字符长度超过了指定长度,会被截断。
charAt() 和 charCodeAt()
charAt()
方法用于返回指定位置的字符,charCodeAt()
方法用于返回指定位置的字符编码。例如:
const str = 'hello'; console.log(str.charAt(1)); // 输出: e console.log(str.charCodeAt(1)); // 输出: 101
总结
ECMAScript 2015 中的字符串方法为字符串的操作提供了更多的灵活性和方便性,学习并掌握这些方法将有助于我们更加高效地开发。在实际的开发工作中,我们可以根据不同的需求灵活使用这些方法,提高工作效率。
示例代码
-- -------------------- ---- ------- ----- ---- - ------ ----- --- - --- ----- --- - ------ ------- --------------- ---- -- ------- --- - -- ------ ----- ------- ----------------------------------- ------------------------------------- ------------------------------------- ----------------------------------- ------------------------------------- ----------------------------------- --------------------------- ---------------------------- -------- -------------------------- -------- ----------------------------- --------------------------- -------------------------------
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/64ac8dbe48841e98948809bc