📅  最后修改于: 2023-12-03 15:40:19.463000             🧑  作者: Mango
在 JavaScript 中,字符串是不可变的,这意味着一旦创建了字符串,就无法直接修改字符串中的字符。但是,JavaScript 为字符串提供了许多有用的方法,使得我们可以对字符串进行各种操作,从而满足我们的需求。
以下是一些常见的本地字符串方法:
我们可以使用 length
属性获取字符串的长度:
const str = 'hello world';
console.log(str.length); // 11
在这个例子中,字符串的长度为 11。
字符串中的每个字符都有一个相应的索引,我们可以使用这些索引来访问和操作字符串中的字符。索引从 0 开始计数:
const str = 'hello world';
console.log(str[0]); // 'h'
console.log(str[1]); // 'e'
在这个例子中,str[0]
返回字符串中的第一个字符 'h'
,str[1]
返回字符串中的第二个字符 'e'
。
我们可以使用 indexOf()
和 lastIndexOf()
方法来查找字符串中的子字符串。indexOf()
方法从字符串开头开始查找,lastIndexOf()
方法从字符串结尾开始查找。这两个方法都返回找到的子字符串的索引:
const str = 'hello world';
console.log(str.indexOf('o')); // 4
console.log(str.lastIndexOf('o')); // 7
在这个例子中,indexOf('o')
返回字符串中第一个出现的字母 'o'
的索引 4,lastIndexOf('o')
返回字符串中最后一个出现的字母 'o'
的索引 7。
我们可以使用 slice()
和 substring()
方法来切片字符串。这两个方法都接收两个参数,第一个参数表示开始切片的索引,第二个参数表示结束切片的索引(不包括该索引的字符)。其中,slice()
方法可以接受负数作为参数,表示从字符串末尾开始计算:
const str = 'hello world';
console.log(str.slice(0, 5)); // 'hello'
console.log(str.slice(-5)); // 'world'
console.log(str.substring(0, 5)); // 'hello'
在这个例子中,str.slice(0, 5)
返回字符串中索引从 0 到 4 的字符 'hello'
,str.slice(-5)
返回字符串中最后五个字符 'world'
,str.substring(0, 5)
返回字符串中索引从 0 到 4 的字符 'hello'
。
我们可以使用 split()
方法将字符串拆分为数组,也可以使用 join()
方法将数组拼接成字符串:
const str = 'hello world';
console.log(str.split(' ')); // ['hello', 'world']
console.log(['hello', 'world'].join(' ')); // 'hello world'
在这个例子中,str.split(' ')
返回由空格分隔的两个单词组成的数组 ['hello', 'world']
,['hello', 'world'].join(' ')
返回由空格连接的两个单词组成的字符串 'hello world'
。
我们可以使用 toUpperCase()
和 toLowerCase()
方法将字符串转换为大写或小写:
const str = 'Hello World';
console.log(str.toUpperCase()); // 'HELLO WORLD'
console.log(str.toLowerCase()); // 'hello world'
在这个例子中,str.toUpperCase()
将字符串转换为大写形式 'HELLO WORLD'
,str.toLowerCase()
将字符串转换为小写形式 'hello world'
。
我们可以使用 replace()
方法将字符串中的一个子字符串替换为另一个字符串:
const str = 'hello world';
console.log(str.replace('hello', 'hi')); // 'hi world'
在这个例子中,str.replace('hello', 'hi')
将字符串中第一个出现的 'hello'
替换为 'hi'
,返回新的字符串 'hi world'
。
以上是一些常见的本地字符串方法,他们可以帮助我们完成各种字符串处理任务。