15种操作string的方法
说明:
需求场景:
用法:
例子:
let str = " 白色不白,黑色不黑,我...我不喜欢你 " let result = str.trim() console.log(result); // 控制台打印:"白色不白,黑色不黑,我...我不喜欢你"
说明:
需求场景:
例子:
let str = "你知道吗?世界上有60亿人,宇宙有60万亿小行星,你比小行星还要珍贵一万倍" let result1 = str.replace("亿","个") let result2 = str.replace(/亿/g,"个") console.log(result1) // 控制台打印:"你知道吗?世界上有60个人,宇宙有60万亿小行星,你比小行星还要珍贵一万倍" console.log(result2) // 控制台打印:"你知道吗?世界上有60个人,宇宙有60万个小行星,你比小行星还要珍贵一万倍"
说明:
需求场景:
用法:
例子:
let str1 = "我有很多好听的情话," let str2 = "可面对你都不敢说不出口。" let result = str1.concat(str2) console.log(result) // 控制台打印:"我有很多好听的情话,可面对你都不敢说不出口。"
说明:
需求场景:
用法1:
用法2:
例子:
let str = "张三,李四;王五" let result1 = str.split(',') let result2 = str.split(/[,;]/) console.log(result1) // 控制台打印:["张三", "李四;王五"] console.log(result2) // 控制台打印:["张三", "李四", "王五"]
用法:
例子:
let str = '这是一个字符串string' let arr = [...str] console.log(arr) // 控制台打印:["这", "是", "一", "个", "字", "符", "串", "s", "t", "r", "i", "n", "g"]
说明:
需求场景:
用法:
例子:
let str = "两极反转,龙卷风摧毁停车场!" let result = [...str].reverse().join("") console.log(result) // 控制台打印:!场车停毁摧风卷龙,转反极两
说明:
需求场景:
用法:
例子:
let str1 = '复制' let result = str1.repeat(2) consol.log(result) // 控制台打印:复制复制 let str2 = '10' let result = str2.repeat(5) console.log(result) // 控制台打印:1010101010
需求场景:
用法:
例子:
let str = "今天的夜色很好,月亮也很圆,唯一遗憾的是,我不是从你的窗子里看到的月亮。" let result1 = str.search("月亮") let result2 = str.search(/[,。]/) console.log(result1) // 控制台打印:8 console.log(result2) // 控制台打印:7
说明:
需求场景:
用法:
例子:
let str = "没有夏日的的凉风,也没有冬日的暖阳,它们只是恰好出现在了合适的时间罢了" let result1 = str.includes("冬日") let result2 = str.includes("冬日",20) console.log(result1); // 控制台打印:true console.log(result2); // 控制台打印:false
说明:
indexOf()
lastIndexOf()
需求场景:
用法1:
用法2:
例子:
let str = "你来人间一趟,你要看看太阳。和你的心上人一起走在街上,了解她,也要了解太阳" let result1 = str.indexOf("太阳") let result2 = str.indexOf("太阳",10) // 从10下标的字符开始查找"太阳",查找范围是"太阳。和你的心上人一起走在街上,了解她,也要了解太阳",下标还是相对原字符串而言的,因此返回11。 let result3 = str.lastIndexOf("太阳") let result4 = str.lastIndexOf("太阳",10) // 0-10下标的字符串为"你来人间一趟,你要看看",没有"太阳",返回-1 console.log(result1) // 控制台打印:11 console.log(result2) // 控制台打印:11 console.log(result3) // 控制台打印:35 console.log(result4) // 控制台打印:-1
说明:
需求场景:
用法1:
用法2:
例子:
let str = "For you, A thousand times over" let result1 = str.toLowerCase() let result2 = str.toUpperCase() console.log(result1) // 控制台打印:"for you, a thousand times over" console.log(result2) // 控制台打印:"FOR YOU, A THOUSAND TIMES OVER"
说明:
需求场景:
用法1:
用法2:
例子:
// 在字符串前补充"-",直到字符串的长度为5 let str1 = '预备开始' let result = str1.padStart(5, '-') console.log(result) // 控制台打印:"---预备开始" //在末尾添加"*",直到字符串的长度为11 let str2 = "184" let result = str2.padEnd(11, "*") console.log(result) // 控制台打印:"184********"
说明:
值得注意的是:
需求场景:
用法1:
用法2:
例子:
let str = "过去的时候,我们相视一笑,就已过了大半辈子" let result1 = str.startsWith("过去") let result2 = str.startsWith("过去",10) let result3 = str.endsWith("半辈子") let result4 = str.endsWith("半辈子",20) console.log(result1); // 控制台打印:true console.log(result2); // 控制台打印:false console.log(result3); // 控制台打印:true console.log(result4); // 控制台打印:false
说明:
需求场景:
用法:
例子:
let str = "相约白头偕老,你却悄悄秃了头" let result = str.length console.log(result) // 控制台打印:14
说明:
substr():
参数一(必须):一个整数,要开始截取字符的下标,如为负则代表从尾部开始截取。参数二(可选):一个整数,要截取字符的数量。如果省略该参数,则默认为string.length,即当前字符串的长度。
slice() :
参数一(必须):一个整数,要开始截取字符的下标,如为负则代表从尾部开始截取。参数二(可选):一个整数,要结束截取字符的下标,如为负则代表从尾部截取多少个字符。如果省略该参数,则默认为string.length,即当前字符串的长度。
substring() :
参数一(必须):一个非负的整数,要开始截取字符的下标。参数二(可选):一个非负的整数,要结束截取字符的下标。如果省略该参数,则默认为string.length,即当前字符串的长度。
需求场景:
用法1:
用法2:
用法3:
例子:
let str = '0123456789' let result1 = str.substr(2,5) // 从下标2开始截取,截取5位 let result2 = str.slice(2,5) // 从下标2开始截取,截取到下标5(不含下标5) let result3 = str.substring(2,5) // 从下标2开始截取,截取到下标5(不含下标5) console.log(result1) // 控制台打印:23456 console.log(result2) // 控制台打印:234 console.log(result3) // 控制台打印:234