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