让你把JS中的字符串方法一网打尽,快速查漏补缺

·  阅读 146
让你把JS中的字符串方法一网打尽,快速查漏补缺

写在前面

JS字符串和数字的方法不管是在面试,还是在工作中,亦或者是在做算法都是非常重要的,也许一个API就能让你少写很多逻辑。
本文详细总结了字符串和数字的方法,让你做到对他们的用法一网打尽。

食用对象:初级前端
美味指数:😋😋😋😋😋

String方法

1. 创建字符串

首先,创建字符串有两种方法
注意通过构造函数(如 new String("string"))创建出来的是封装了基本类型值(如 "string")的封装对象
同时字符串的方法并不改变原字符串的值,而是返回一个新字符串

let stringA = new String('string');
let stringB = 'string';
console.log(typeof stringA);  //object
console.log(typeof stringB);  //string
复制代码

2. charAt

charAt:返回一个字符串中指定位置的字符

let str = 'jueJin';
console.log(str.charAt(2))  //e
复制代码

3.concat

concat:连接两个字符串,返回新的字符串

let str = 'zhangsan';
let str2 = str.concat(' juejin');
console.log(str2);  //zhangsan juejin
复制代码

4. indexOf

indexOf:返回某个指定字符在字符串中首次出现的位置

let str = 'juejin';
let n = str.indexOf('i');
console.log(n);   //4
复制代码

5. lastIndexOf

lastIndexOf:从后往前搜索,其他与indexOf一样

let str = 'juejin';
let n = str.lastIndexOf('j');
console.log(n);   //3
复制代码

6. includes

includes:查询一个字符串中是否包括指定的字符子串

let str = 'zhangsan';
console.log(str.includes('san')) //true
复制代码

7. match

match:一般用来找一个或多个正则表达式的匹配,返回值为一个数组,里面有所有匹配的值

let str = 'zhangsan123 juejin456'
console.log(str.match(/\d/g));  //[ '1', '2', '3', '4', '5', '6' ]
复制代码

8. repeat

repeat:复制字符串指定次数

let str = 'juejin';
console.log(str.repeat(3));  //juejinjuejinjuejin
复制代码

9. replace

replace:查找匹配的并替换,一般与正则表达式集合。

let str = 'juejin';
let str2 = str.replace(/jue/, 'zhangsan ');
console.log(str2);  //zhangsan jin
复制代码

10. search

search:一般与正则表达式结合,查找某个值,查到了返回查到的索引值,未查到返回-1

let str = 'juejin123';
let n = str.search(/\d/);
console.log(n)  //6
复制代码

11. slice, substring

slice, substring:用来截取字符串的某个部分,参数为起始索引和结束索引+1,并返回新的。

let str = 'juejin';
let str2 = str.slice(3, 6);
let str3 = str.substring(3, 6);
console.log(str2, str3);   //jin jin
复制代码

slice和substring区别: 当接收的参数是负数时,slice会将它字符串的长度与对应的负数相加,substring则干脆将负参数都直接转换为0

let str = 'juejin';
console.log(str.slice(-2));  //in
console.log(str.substring(-2));  //juejin
复制代码

12. substr

substr:用来截取字符串的某个部分,参数为起始索引和个数,并返回新的。

let str = 'juejin';
let str2 = str.substr(3, 3)
console.log(str2);  //jin
复制代码

13. split

split:把字符串以指定要去分割成字符串数组

let str = 'zhangsan juejin';
console.log(str.split(' '));  //[ 'zhangsan', 'juejin' ]
复制代码

14. startsWith

startsWith:检测字符串是否以指定字符串开头

let str = 'kerwin love';
console.log(str.startsWith('kerwin')); //true
复制代码

15. toLowerCase,toUpperCase

toLowerCase,toUpperCase:将字符串转换大小写

let str = 'jueJin';
console.log(str.toLowerCase());  //juejin
console.log(str.toUpperCase());  //JUEJIN
复制代码

16. trim

trim:去除字符串两端的空格

let str = '  jue  jin  ';
console.log(str.trim());  //jue  jin
复制代码

17. parseInt

parseInt:解析一个字符串,返回整数,第二个参数为解析的数字的基数。

let num = '101';
console.log(parseInt(num, 2));  //5
复制代码

Number方法

18. isFinite

isFinite:检测传入的参数是否是一个有穷数

let num = 123
console.log(Number.isFinite(num));  //true
复制代码

19. toExponential

toExponential:转换成指数计数法,参数为小数位数

let num = 5.21;
console.log(num.toExponential(1));  //5.2e+0
复制代码

20. toFixed

toFixed:保留x位小数,并转换成字符串

let nums = 5.213;
let res = nums.toFixed(1)
console.log(res);  //5.2
console.log(typeof res);  //string
复制代码

21. toPrecision

toPrecision:变成指定长度,并转换成字符串

let num = 133.520;
console.log(num.toPrecision(3))  //134
复制代码

22. toString

toString:把数字转换成字符串,参数为转换进制

let num = 101;
console.log(num.toString(8));  //101
复制代码

感谢阅读

  非常感谢您到阅读到最后,如果有错误希望您能够指出,以免误导其他人,如果您觉得对您有帮助的话,希望能够点个赞,加个关注,有任何问题都可以联系我,希望能够一起进步。
  最后祝您前程似锦,我们各自攀登,高处相见🌈!

分类:
前端
分类:
前端