javaScript字符串方法总结

一、字符查找方法类

参数表示str表示传入字符串,num表示传入数值,带图标✨表示常用

1、charAt(num)
返回在指定位置的字符。index表示查找的指定下标

var str = "JavaScript";
var n = str.charAt(2)
console.info(n) // v

✨2、indexOf(str)
返回某个指定的字符串值在字符串中首次出现的位置。区分大小写

var str = "JavaScript";
var n = str.indexOf('S')
console.info(n) //4

✨3、lastIndexOf(str)
返回一个指定的字符串值最后出现的位置,如果指定第二个参数 start,则在一个字符串中的指定位置从后向前搜索,区分大小写

var str="I am from china";
var n=str.lastIndexOf("china");
console.log(n);//10

4、endsWith(str)
endsWith() 方法用来判断当前字符串是否是以指定的子字符串结尾的(区分大小写)。
如果传入的子字符串在搜索字符串的末尾则返回 true,否则将返回 false。

let str = "Hello world";
let str1 = str.endsWith("world")   
let str2 = str.endsWith("World")  
console.log(str1)//  true
console.log(str2) //  false

5、startsWith(str)
startsWith() 方法用于检测字符串是否以指定的子字符串开始。(区分大小写)。
如果传入的子字符串在搜索字符串的末尾则返回 true,否则将返回 false。

let str = "Hello world";
let str1 = str.startsWith("Hello")   
let str2 = str.startsWith("world")  
console.log(str1)//  true
console.log(str2) //  false

6、match(re | str)
方法可在字符串内检索指定的值,或找到一个或多个正则表达式的匹配。re表示传入正则表达式,正则后带g表示查找字符串内匹配的所有字符,并返回一个数组,不带g返回传入字符的详情数组

var str="I am from china";
var n=str.match(/m/g);
console.log(n); // ['m', 'm' ]

7、search(re | str)
方法可在字符串内检索指定的值,或找到一个或多个正则表达式的匹配,返回传入字符的下标。re表示传入正则表达式,正则后带g表示查找字符串内匹配的所有字符,并返回一个数组,不带g返回传入字符的详情数组

var str="Visit BOBO!"; 
var n=str.search(/O/g);
var n1=str.search('O');
console.log(n);//7
console.log(n1);//7

8、charCodeAt(num)
方法可返回指定位置的字符的 Unicode 编码,返回值是 0 - 65535 之间的整数,表示给定索引处的 UTF-16 代码单元。
字符串中第一个字符的位置为 0, 第二个字符位置为 1,以此类推

var str = "HELLO WORLD";
var n = str.charCodeAt(0);
console.log(n);//72

✨9、repalce(str,str)
用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串。只能替换匹配到的第一个字符

var str="Da,Da";
var n=str.replace("a","c");
console.log(n)//Dc,Da

✨10、repalceAll(str,str)
replaceAll() 方法用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串。该函数会替换所有匹配到的子字符串

var str="Da,Da";
var n=str.replaceAll("a","c");
console.log(n)//Dc,Dc

二、字符处理类

11、repeat(num)
该方法用于字符串复制,num表示复制字符串的次数

var str = "Da";
var doubleStr = str.repeat(2);
console.log(doubleStr)

✨12、slice(start,end)
slice(start, end) 方法可提取字符串的某个部分,并以新的字符串返回被提取的部分。
使用 start(包含) 和 end(不包含) 参数来指定字符串提取的部分。
start 参数字符串中第一个字符位置为 0, 第二个字符位置为 1, 以此类推,如果是负数表示从尾部截取多少个字符串,slice(-2) 表示提取原数组中的倒数第二个元素到最后一个元素(包含最后一个元素)。
end 参数如果为负数,-1 指字符串的最后一个字符的位置,-2 指倒数第二个字符,以此类推

var str="Hello world!";
var n=str.slice(1,5);
console.log(n)

✨13、split(str)
split() 方法用于把一个字符串分割成字符串数组。

var str="How are you ?";
var n=str.split(" ");
console.log(n) //[ 'How', 'are', 'you', '?' ]

14、substr(start,end)
substr() 方法可在字符串中抽取从 开始 下标开始的指定数目的字符。

var str="How are you ?";
var n=str.substr(0,3);
console.log(n) //'How'

✨15、substring(start,end)
substring() 方法用于提取字符串中介于两个指定下标之间的字符。
substring() 方法返回的子串包括 开始 处的字符,但不包括 结束 处的字符。

var str="How are you ?";
var n=str.substring(0,3);
console.log(n) //'How'

16、trim()
方法用于去除字符串两边的空格。

var str="   How   ";
var n=str.trim();
console.log(n) //'How'

三、其它

17、toLowerCase()
将字符串转化为小写

var str="HOW";
var n=str.toLowerCase();
console.log(n) //'how'

18、toUpwerCase()
将字符串转化为大写

var str="how";
var n=str.toUpperCase();
console.log(n) //'HOW'

19、toString()
除object外,将其它基本类型转换为字符串,当然,字符串本身也带有这个方法,但是因为本来就是字符串,所以没有必要用

var num =1111;
var arr = [1,2,3]
var str=num.toString();
var str1 = arr.toString()
console.log(str) //111
console.log(str1) //1,2,3

四、后续新增

19、at(num)
和charAt()方法的使用是差不多的,也是传入数值下标,返回该下标下的字符。同样支持负数索引,表示从尾部开始查找。

var str = 'hello'
console.log(str.at(2)) //l

20、str.includes(string)
查看在str字符串中是否包含了string字符,包含则返回true,反之false。区分大小写

var str = 'hello'
console.log(str.includes('l')) //true
console.log(str.includes('a')) //false

21、str.padStart(length,string)、str.padEnd(length,string)
ES2017 引入了字符串补全长度的功能。如果某个字符串不够指定长度,会在头部或尾部补全。padStart() 用于头部补全,padEnd() 用于尾部补全。
length表示补全后字符的总长度(原字符加补全的长度),string表示用何种字符进行补全,默认为空格

let a = "a".padStart(10)
let b = "b".padEnd(10)
let a1 = "a".padStart(10, '*')
let b1 = "b".padEnd(10, '*')
console.log(a)
console.log(b)
console.log(a.length)
console.log(b.length)
console.log("___________")
console.log(a1)
console.log(b1)
console.log(a1.length)
console.log(b1.length)

/*
// 输出:
         a
b
10
10
___________
*********a
b*********
10
10
*/ 

结语

本次的总结就先到这里,有的方法在nodejs中运行会报错,如果出现该函数未定义,产生的原因基本上是nodejs版本过低,建议升级到最新版本的nodejs。NodeJS官方下载链接
另外还有一些个人感觉很少用到的方法就没有添加上。学习位置是菜鸟教程:
https://www.runoob.com/jsref/jsref-obj-string.html

欢迎一起学习交流

  • 1
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

讷言丶

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值