你真的见过这些字符串??我猜你绝对.........

219 阅读2分钟

不管在前端还是后端都会用到字符串,想用字符串方法的时候还得查,不用查,看看我这篇文章就够了

看看是不是有你没见过的字符串方法

字符串方法总结

1.字符串长度

var txt = "juejin";
console.log(txt.length);  //6

2. 查找字符串中的指定文本

(1).indexOf

indexOf返回首次出现的位置

var str = "juejin";
console.log(str.indexOf("u"));  //1  返回下标

(2).lastIndexOf

再多就真背不过来了.... lastIndexOf返回最后一次出现的位置

var str = "juejin";
console.log(str.lastIndexOf("j"));  //3 返回下标

如果未找到文本, indexOf() 和 lastIndexOf() 均返回 -1。

一开始难理解....

两种方法都接受作为检索起始位置的第二个参数。

var str = "juejin";//从头到尾
console.log(str.indexOf("j",2));//2表示从下标2开始查找 
//返回下标3
var str = "juejin";  //从尾到头
console.log(str.lastIndexOf("j",2));//2表示从下标2开始查找 
//返回下标0

3. 检索字符串中的字符串

**返回下标嘛!!! **

搜索字符串,并返回匹配的位置。

var str = "juejin";
console.log(str.search("jin"));  //返回3

4. 提取部分字符串

(1) slice()

var str = "juejin";
console.log(str.slice(1,3));  //返回ue

两个参数:起始索引(开始位置),终止索引(结束位置)

如果某个参数为负,则从字符串的结尾开始计数。

var str = "juejin";
console.log(str.slice(-7,-3));  //返回jue

如果省略第二个参数,则该方法将裁剪字符串的剩余部分

var str = "juejin";
console.log(str.slice(4));  //返回in

或者从结尾计数

var str = "juejin";
console.log(str.slice(-4));  //返回ejin

(2)substring

substring()类似于slice(),不同之处在于substring()不接受负的索引。

var str = "juejin";
console.log(str.substring(0,3));  //jue

如果省略第二个参数,则该substring()将裁剪字符串的剩余部分。

var str = "juejin";
console.log(str.substring(3));  //jin

(3)substr()

substring()类似于slice(),不同之处在于第二个参数规定被提取部分的长度

注意:第二个参数不能为负,因为它定义的是长度。

var str = "juejin";
console.log(str.substr(3,3));  //jin

如果省略第二个参数,则该substr()将裁剪字符串的剩余部分

var str = "juejin";
console.log(str.substr(4));  //in

如果首个参数为负,则从字符串的结尾计算位置。

var str = "juejin";
console.log(str.substr(-5));  //uejin

(4)charAt()

指谁返回谁

var str = "JueJin";
console.log(str.charAt(1) );  //u

(5)charCodeAt()

返回unicode 编码

var str = "JueJin";
console.log(str.charCodeAt(0) );  //74

5.替换字符串内容

(1)replace()

replace()方法用另一个值替换在字符串中指定的值

var str = "juejin";
console.log(str.replace('j','l'));  //luejin

↑↑↑↑只有第一个'j'变了!!!!!

replace()只替换首个匹配而且replace()对大小写敏感 解决方法

var str = "juejin";
console.log(str.replace(/j/g,'l'));  //luelin

注意正则表达式不带引号

6.转换为大写和小写

(1)toUpperCase()

var str = "juejin";
console.log(str.toUpperCase());  //JUEJIN

(2)toLowerCase()

var str = "JUEJIN";
console.log(str.toLowerCase());  //juejin

6.concat() 方法

var text1 = "jue";
var text2 = "jin";
console.log( text1.concat(text2)); //juejin

7.String.trim()

**去除空格 **

var str = "       juejin        ";
console.log(str.trim())  //juejin

此文仅为个人笔记,希望能帮到需要的人

有错误请指出,虚心请教