Words etch cherished moments.
OG

JavaScript中的String

3,373 words, 8 min read
2018/06/15 AM
1,076 views

#JavaScript字符串方法详解

JavaScript中的字符串是一种基本数据类型,它表示文本数据,在编程中经常被使用到。本文将详细介绍JavaScript中常用的字符串方法,并给出使用场景和示例代码。

#1. 字符串长度

JavaScript中的字符串长度可以通过length属性获取。该属性返回字符串包含的字符数,不包括Unicode补充字符。

          
  • 1
  • 2
const str = 'Hello World'; console.log(str.length); // 输出11

#2. 字符串索引 在JavaScript中,字符串的每个字符都可以通过索引访问到。索引从0开始,可以使用方括号[]来访问某个位置的字符。

          
  • 1
  • 2
const str = 'Hello World'; console.log(str[0]); // 输出H

如果想要获取字符串中某个位置的字符的Unicode码点,可以使用charCodeAt()方法。

          
  • 1
  • 2
const str = 'Hello World'; console.log(str.charCodeAt(0)); // 输出72

#3. 字符串查找

JavaScript提供了两种方法来查找字符串中的子串:indexOf()和lastIndexOf()。这两种方法都接受两个参数,第一个参数是要查找的子串,第二个参数是开始查找的位置。

  • indexOf()方法从字符串的开头开始查找,返回子串第一次出现的位置,如果没有找到则返回-1。
          
  • 1
  • 2
  • 3
const str = 'Hello World'; console.log(str.indexOf('l')); // 输出2 console.log(str.indexOf('x')); // 输出-1
  • lastIndexOf()方法从字符串的末尾开始查找,返回子串最后一次出现的位置,如果没有找到则返回-1。
          
  • 1
  • 2
  • 3
const str = 'Hello World'; console.log(str.lastIndexOf('l')); // 输出9 console.log(str.lastIndexOf('x')); // 输出-1

#4. 字符串替换

JavaScript提供了replace()方法来替换字符串中的子串。该方法接受两个参数,第一个是要替换的子串,第二个是用来替换的新字符串。

          
  • 1
  • 2
const str = 'Hello World'; console.log(str.replace('World', 'JavaScript')); // 输出Hello JavaScript

replace()方法还可以使用正则表达式作为第一个参数,实现更加灵活的字符串替换操作。

          
  • 1
  • 2
const str = '2023-05-30T19:12:45.123Z'; console.log(str.replace(/\d{4}-\d{2}-\d{2}/, '1990-01-01')); // 输出1990-01-01T19:12:45.123Z

#5. 字符串分割

JavaScript提供了split()方法将字符串分割成数组。该方法接受一个参数,表示用何种字符或正则表达式作为分隔符。

          
  • 1
  • 2
const str = 'a,b,c,d'; console.log(str.split(',')); // 输出['a', 'b', 'c', 'd']

#6. 字符串格式化

JavaScript没有内置的字符串格式化方法,但可以通过模板字符串来实现简单的格式化操作。

          
  • 1
  • 2
const name = 'Tom'; console.log(`Hello, ${name}!`); // 输出Hello, Tom!

还可以使用placeholder()库来实现更加复杂的格式化操作。

          
  • 1
  • 2
  • 3
  • 4
  • 5
import placeholder from 'placeholder'; const user = { name: 'Tom', age: 18 }; const template = 'My name is {name}, and I am {age} years old.'; console.log(placeholder(template, user)); // 输出My name is Tom, and I am 18 years old.

#7. 字符串大小写转换

JavaScript提供了toLowerCase()和toUpperCase()方法用于将字符串转换成小写或大写形式。

          
  • 1
  • 2
  • 3
  • 4
  • 5
const str = 'Hello World'; console.log(str.toLowerCase()); // 输出hello world console.log(str.toUpperCase()); // 输出HELLO WORLD

#8. 其他常用字符串方法 JavaScript中还有很多其他常用的字符串方法,这里只介绍一些比较常见的。

  • trim()方法用于去除字符串两端的空白字符。
          
  • 1
  • 2
const str = ' Hello World '; console.log(str.trim()); // 输出Hello World
  • concat()方法用于将两个字符串连接起来。
          
  • 1
  • 2
  • 3
const str1 = 'Hello'; const str2 = 'World'; console.log(str1.concat(' ', str2)); // 输出Hello World
  • slice()方法用于提取字符串的一部分,它接受两个参数,第一个是开始位置,第二个是结束位置(不包括该位置)。
          
  • 1
  • 2
  • 3
const str = 'Hello World'; console.log(str.slice(0, 5)); // 输出Hello console.log(str.slice(-5)); // 输出World

#9. 使用场景 JavaScript中的字符串方法在日常编程中经常被使用到。

下面介绍一些常见的使用场景。

  • 字符串查找:需要判断一个字符串中是否包含某个关键字或子串时,可以使用indexOf()或lastIndexOf()方法来实现。
  • 字符串替换:需要对一个字符串中的某些内容进行替换时,可以使用replace()方法。
  • 字符串分割:需要将一个字符串按照某种规则分割成数组时,可以使用split()方法。
  • 字符串大小写转换:需要将一个字符串转换成小写或大写形式时,可以使用toLowerCase()或toUpperCase()方法。
  • 字符串格式化:需要将一些变量插入到一个模板字符串中,可以使用ES6的模板字符串或placeholder()库。

#10. 总结

JavaScript中的字符串方法非常丰富,掌握这些方法可以让我们更加高效地处理字符串。不同的方法在不同的场景下有着不同的用途,尤其是在实际项目中,合理地使用这些方法可以极大地提高代码的可读性和可维护性。

Creative Commons BY-NC 4.0
https://zhangwurui.cn/article/11
0/0comments
Guest
Start the discussion...
Be the first to comment