28个JavaScript常用字符串方法以及使用技巧总结

28个JavaScript常用字符串方法以及使用技巧总结

1. 字符串长度

通过 length 属性可以获取字符串的长度。

const str = 'Hello World';
console.log(str.length); // 11

2. 字符串截取

常见的字符串截取方式为 substringslice,两者用法类似,都是根据起始位置和结束位置截取字符串,区别在于当起始位置大于结束位置时,substring 方法会自动调换这两个参数,而 slice 方法则返回空字符串。

const str = 'Hello World';
console.log(str.substring(0, 5)); // "Hello"
console.log(str.slice(0, 5)); // "Hello"
console.log(str.substring(5, 0)); // "Hello"
console.log(str.slice(5, 0)); // ""

3. 字符串分割

可以通过 split 方法根据指定的分隔符将字符串分割成数组。

const str = 'item1,item2,item3';
console.log(str.split(',')); // ["item1", "item2", "item3"]

4. 字符串替换

可以通过 replace 方法将指定字符替换为其他字符。

const str = 'Hello World';
console.log(str.replace('World', 'JavaScript')); // "Hello JavaScript"

5. 字符串大小写转换

可以通过 toUpperCasetoLowerCase 方法将字符串分别转换成大写和小写。

const str = 'Hello World';
console.log(str.toUpperCase()); // "HELLO WORLD"
console.log(str.toLowerCase()); // "hello world"

6. 字符串去空格

可以通过 trim 方法去除字符串两端的空格。此外,也可以使用 trimStarttrimEnd 分别去除字符串开头和结尾的空格。

const str = ' Hello World   ';
console.log(str.trim()); // "Hello World"
console.log(str.trimStart()); // "Hello World   "
console.log(str.trimEnd()); // " Hello World"

7. 匹配字符串开头和结尾

可以使用 startsWithendsWith 方法判断字符串是否以指定的字符开头或结尾。

const str = 'Hello World';
console.log(str.startsWith('Hello')); // true
console.log(str.endsWith('World')); // true

8. 子字符串位置查找

可以使用 indexOflastIndexOf 方法查找一个子字符串在字符串中第一次出现和最后一次出现的位置。

const str = 'Hello World';
console.log(str.indexOf('o')); // 4
console.log(str.lastIndexOf('o')); // 7

9. 字符串是否包含指定字符

可以使用 includes 方法判断一个字符串是否包含指定的字符。

const str = 'Hello World';
console.log(str.includes('World')); // true

10. 使用正则表达式查找匹配

可以使用 search 方法和正则表达式来查找匹配的位置。

const str = 'Hello World';
console.log(str.search(/o/)); // 4

11. 字符串重复

可以使用 repeat 方法将一个字符串重复多次。

const str = 'Hello';
console.log(str.repeat(3)); // "HelloHelloHello"

12. 字符串拼接

可以使用 concat 方法将多个字符串拼接在一起。

const str1 = 'Hello';
const str2 = 'World';
console.log(str1.concat(' ', str2)); // "Hello World"

13. 原始值与字符串转换

可以使用 toString 方法将原始值转换成字符串。

const num = 123;
console.log(num.toString()); // "123"

14. ASCII码与字符转换

可以使用 charCodeAt 方法将一个字符转换成 ASCII 码,也可以使用 fromCharCode 方法将 ASCII 码转换成字符。

const str = 'A';
console.log(str.charCodeAt(0)); // 65
console.log(String.fromCharCode(65)); // "A"

15. 字符串模板

可以使用模板字符串的方式来拼接字符串,使用 ${} 包含变量。

const str = 'JavaScript';
console.log(`Hello ${str}`); // "Hello JavaScript"

16. 重复字符串占位符

可以使用 padStartpadEnd 方法来给字符串添加前缀或后缀使其固定长度,如果指定的长度小于当前字符串的长度,则不做任何操作。

const str = 'Hello';
console.log(str.padStart(8, '*')); // "***Hello"
console.log(str.padEnd(8, '*')); // "Hello***"

17. 根据函数返回值替换字符串

可以使用 replace 方法的第二个参数为函数的方式,根据函数的返回值替换字符串中的内容。

const str = 'abc1def2gh3ij4kl';
const result = str.replace(/\d+/g, function(match) {
  return parseInt(match) + 1;
});
console.log(result); // "abc2def3gh4ij5kl"

18. 字符串的字节长度

可以使用 encodeURI 方法对字符串进行编码,并获取其字节长度。

const str = '你好,世界';
console.log(encodeURI(str).replace(/%../g, 'x').length); // 10

19. URL编码与解码

可以使用 encodeURIComponentdecodeURIComponent 方法来对URL进行编码和解码操作。

const url = 'http://www.example.com?name=张三&age=20';
const encodedUrl = encodeURIComponent(url);
console.log(encodedUrl); // "http%3A%2F%2Fwww.example.com%3Fname%3D%25E5%25BC%25A0%25E4%25B8%2589%26age%3D20"
const decodedUrl = decodeURIComponent(encodedUrl);
console.log(decodedUrl); // "http://www.example.com?name=张三&age=20"

20. 字符串转换为数组

可以使用 Array.from 方法将一个字符串转换成数组。

const str = 'Hello World';
console.log(Array.from(str)); // ["H", "e", "l", "l", "o", " ", "W", "o", "r", "l", "d"]

21. 使用字符串遍历器

可以使用 for...of 循环遍历一个字符串。

const str = 'Hello World';
for (let s of str) {
  console.log(s);
}

22. 字符串的解构赋值

可以使用解构赋值的方式快速将字符串转换成数组。

const [a, b, c] = 'abc';
console.log(a); // "a"
console.log(b); // "b"
console.log(c); // "c"

23. 多个分隔符分割字符串

可以使用正则表达式和 split 方法来实现多个分隔符分割字符串。

const str = 'item1,item2;item3 item4';
console.log(str.split(/,|;|\s+/)); // ["item1", "item2", "item3", "item4"]

24. 缓存字符串变量

可以使用模板字符串的方式缓存字符串变量,避免多次连接字符串。

const str1 = 'Hello';
const str2 = 'World';
const cachedStrs = `str1 is ${str1}, and str2 is ${str2}`;
console.log(cachedStrs); // "str1 is Hello, and str2 is World"

25. 字符串数组排序

可以使用 localeCompare 方法对数组中的字符串进行排序。

const arr = ['Tom', 'Andy', '张三', '李四'];
arr.sort(function(a, b) {
  return a.localeCompare(b, 'zh');
});
console.log(arr); // ["Andy", "Tom", "李四", "张三"]

26. 多行字符串

可以使用模板字符串的方式实现多行字符串,也可以使用 \ 换行符实现多行字符串。

const str1 = `Hello
            World`;
console.log(str1); // "Hello
                  // World"
const str2 = 'Hello\nWorld';
console.log(str2); // "Hello
                  // World"

27. 十六进制转换为字符串

可以使用 String.fromCharCode 方法将十六进制转换为字符串。

const hexStr = '48656c6c6f20576f726c64';
const charCodeArr = [];
for (let i = 0; i < hexStr.length; i += 2) {
  charCodeArr.push(parseInt(hexStr.slice(i, i + 2), 16));
}
const str = String.fromCharCode(...charCodeArr);
console.log(str); // "Hello World"

28. 字符串大小写互换

可以使用 toUpperCasetoLowerCase 方法配合运算符 ^ 互换大小写。

const str = 'Hello World';
const convertedStr = str.replace(/[a-z]/gi, function(s) {
  return s === s.toUpperCase() ? s.toLowerCase() : s.toUpperCase();
});
console.log(convertedStr); // "hELLO wORLD"

示例1:将一个字符串中的所有数字加1。

const str = 'abc1def2gh3ij4kl';
const result = str.replace(/\d+/g, function(match) {
  return parseInt(match) + 1;
});
console.log(result); // "abc2def3gh4ij5kl"

示例2:将一个字符串中的所有空格去除,并将英文单词首字母大写。

const str = '    hello     world   ';
const result = str.trim().replace(/\b\w+\b/g, function(s) {
  return s.charAt(0).toUpperCase() + s.slice(1).toLowerCase();
});
console.log(result); // "Hello World"

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:28个JavaScript常用字符串方法以及使用技巧总结 - Python技术站

(0)
上一篇 2023年5月18日
下一篇 2023年5月18日

相关文章

  • JavaScript中字符串(string)转json的2种方法

    下面我将详细讲解一下“JavaScript中字符串(string)转json的2种方法”。 背景知识 在JavaScript中,JSON是一种轻量级的数据交换格式,通常用于浏览器和服务器之间的数据传输。在实际开发中,我们需要将一些数据转换成JSON格式来进行传输,而字符串则是最常见的一种数据类型。那么如何将字符串转换成JSON格式呢? 方法一:使用JSON.…

    JavaScript 2023年5月27日
    00
  • JavaScript数组实例的9个方法

    下面我来为您详细讲解JavaScript数组实例的9个方法: 1. push() arr.push(item1, item2, …, itemX); push() 方法向数组的末尾添加一个或多个元素,并返回新的长度。示例代码如下: let arr = [1, 2, 3]; // 向数组末尾添加元素4 arr.push(4); console.log(ar…

    JavaScript 2023年5月27日
    00
  • js获取当前select 元素值的代码

    获取select元素的值在JavaScript中是一项非常基础和常见的任务。以下是详细的步骤和示例来演示如何获取当前select元素的值。 步骤一:获取select元素的引用 我们需要先通过JavaScript获取select元素的引用,以便后续操作。这可以通过以下代码实现: let selectElement = document.getElementBy…

    JavaScript 2023年6月11日
    00
  • js实现从数组里随机获取元素

    实现从数组里随机获取元素有以下几种方式: 方法一:使用Math.random() 我们可以利用Math.random()方法生成一个0到1的随机数,将其乘上数组长度再向下取整得到一个0到数组长度-1的随机整数,最后使用该随机整数获取数组对应的元素。下面是一个示例代码: const arr = [1, 2, 3, 4, 5]; const randomIdx …

    JavaScript 2023年5月27日
    00
  • 一文详解如何使用node执行js文件

    一文详解如何使用node执行js文件 在本篇文章中,我们将会详细介绍如何使用 Node.js 来运行 JavaScript 代码。 Node.js 是什么 Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境,可以让 JavaScript 代码在服务器端运行。它提供了丰富的内置库和模块,可以轻松地构建高性能、可伸缩的网络应用…

    JavaScript 2023年5月28日
    00
  • js中传递特殊字符(+,&)的方法

    当需要在JavaScript中传递特殊字符(+,&)时,可以使用URL编码方式来避免出现意外的错误。 URL编码指的是将字符串中的某些特殊字符,转换成%xx的形式。其中xx是字符对应的ASCII码的十六进制表示。使用encodeURI()方法可以对整个URL进行编码,而使用encodeURIComponent()方法则可以编码特定的参数。值得注意的是…

    JavaScript 2023年5月19日
    00
  • iOs迁至WKWebView跨过的一些坑

    下面是详细讲解“iOs迁至WKWebView跨过的一些坑”的完整攻略: WKWebView简介 在iOS中,WKWebView是一个基于WebKit引擎的控件,可以用于加载网页。相较于UIWebView,WKWebView有性能更好、相应更快、占用内存更少等优点,因此被广泛应用于iOS应用的WebView开发中。 迁移步骤 步骤1:工程迁移 将UIWebVi…

    JavaScript 2023年6月11日
    00
  • Js中var,let,const的区别你知道吗

    当我们在 JavaScript 中声明变量时,可以使用三种关键字 var、let 和 const。这些关键字虽然能够完成相同的任务,但它们的含义和用法是不同的。 var关键字 使用 var 关键字,我们可以在 JavaScript 中声明一个变量。它是 ES5 标准中的一部分。var 关键字在声明变量时,会将该变量提升到函数或全局作用域的顶部。这意味着,在声…

    JavaScript 2023年6月10日
    00
合作推广
合作推广
分享本页
返回顶部