【前端】字符串常用的方法

字符串是计算机编程中常用的数据类型之一,它包含了一些常用的方法来对字符串进行操作和处理。工作中用的频次会比较多,特整理以下

一、length 属性

用于获取字符串的长度

//语法:str.length
let str = "hello"
console.log(str.length);//5

二、根据索引获取字符

①at()

根据索引获取字符,该方法允许正整数和负整数。负整数从字符串中的最后一个字符开始倒数。

//语法:str.at(index)
let str = "hello"
console.log(str.at(1));//'e'
console.log(str.at(-2));//'l'
②charAt()

从一个字符串中返回指定的字符
一个介于 0 和字符串长度减 1 之间的整数。(0~length-1) 如果没有提供索引,charAt() 将使用 0,如果指定的 index 值超出了该范围,则返回一个空字符串。

//语法:str.charAt(index)
let str = 'hello'
console.log(str.charAt(1));//'e'
console.log(str.charAt(-2));//''

三、字符串拼接—>concat()

将一个或多个字符串与原字符串连接合并,形成一个新的字符串并返回

//语法:str.concat(str2, [, ...strN])
let str = "hello,"
console.log(str.concat('tom'));//'hello,tom'

四、检查字符串中是否包含某个内容—>includes()

用来检查字符串中是否包含某个内容,并根据情况返回 true 或 false。

//语法:str.includes(a) 或 str.includes(a,b)
//其中:a指在str中要搜索的字符串----b指字符串中a的位置(默认为0)
let str = "hello"
console.log(str.includes('e'));//true
console.log(str.includes('h',1));//false-->h的位置为0,返回false

五、字符串查找的方法—> indexOf()与lastIndexOf()与search()

①indexOf()

判断字符串中是否包含指定字符,如果包含则返回指定子字符串第一次出现的索引。如果不包含则返回-1

//语法:str.indexOf()
let str = "hello"
console.log(str.indexOf('l'));//2  两个l,第一次出现的索引是2
console.log(str.indexOf('t'));//-1
②lastIndexOf()

判断字符串中是否包含指定字符,如果包含则返回指定值最后一次出现的索引,在一个字符串中的指定位置处从后向前搜索。如果没找到这个特定值则返回 -1。

//语法:str.lastIndexOf()
let str = "hello"
console.log(str.lastIndexOf('l'));//3 两个l,最后一次出现的索引是3
③search()

执行正则表达式和 String 对象之间的一个搜索匹配
一个参数,若成功则返回首次匹配项的索引,否则返回-1

//语法:str.search()
let str = 'hello javaJava'
//参数为字符串
console.log(str.search('java'));//6
//参数为正则表达式
console.log(str.search(/java/));//6

六、检查字符串是否以指定内容开头/结尾—>startsWith()与endsWith()

①startsWith()

检查一个字符串是否以指定内容开头,并根据判断结果返回 true 或 false。

//语法:str.startsWith()
let str = "hello how are you"
console.log(str.startsWith('hello'));//true
console.log(str.startsWith('how'));//false
②endsWith()

检查一个字符串是否以指定内容结尾,并根据判断结果返回 true 或 false。

//语法:str.endsWith()
let str = "hello how are you"
console.log(str.endsWith('you'));//true
console.log(str.endsWith('are'));//false

七、元素替换—>replace()与replaceAll()

①replace()

使用一个新字符串替换一个指定内容

//语法:str.replace(原值,替换的值)
let str = "hello how are you"
console.log(str.replace('hello','abc'));//abc how are you
②replaceAll()

使用一个新字符串替换所有指定内容

//语法:str.replaceAll(原值,替换的值)
let str = "hello hello how are you"
console.log(str.replaceAll('hello','abc'));//abc abc how are you

八、字符串截取—>与slice()与substring()

①slice() - 对字符串进行切片

两个参数分别表示截取字符串的起始位置和结束位置,返回值包含开始索引,不包含结束索引;
如果省略第二个参数,则会截取到字符串的尾部
如果大于0,则从前面计数,如果小于0,则从后面计数;

//语法:str.slice(开始索引,结束索引)
let str = 'hello hello how are you'
 console.log(str.slice(0,4));//hell
//如果省略第二个参数,则会截取到字符串的尾部
console.log(str.slice(3));//lo hello how are you
//如果大于0,则从前面计数,如果小于0,则从后面计数
console.log(str.slice(3,-1));//lo hello how are yo
②substring() - 截取字符串

两个参数分别表示字符串的起始位置和结束位置,返回值包含开始索引,不包含结束索引;
如果省略第二个参数,则会截取到字符串的尾部;
如果结束位置在起始位置之前,则会自动将其调换后截取,当参数小于0 时按0处理

//语法:str.substring(开始索引,结束索引)
let str = 'hello hello how are you'
console.log(str.substring(0,4));//hell
//如果省略第二个参数,则会截取到字符串的尾部
console.log(str.substring(3));//lo hello how are you 
//如果结束位置在起始位置之前,则会自动将其调换后截取,当参数小于0 时按0处理
console.log(str.substring(3,-1));//hel  
③slice()与substring()的区别

相同点:截取字符串
不同点:参照下面的示例👇
slice的2个值,如果大于0,则从前面计数,如果小于0,则从后面计数;
substring的2个值,如果结束位置在起始位置之前,则会自动将其调换后截取,当参数小于0 时按0处理

let str = 'hello hello how are you'
console.log(str.slice(3,-1));//lo hello how are yo
console.log(str.substring(3,-1));//hel

九、字符串拆分为一个数组—>split()

用来将一个字符串拆分为一个数组

//语法:str.split()
let str = "abc@def@ghi@jql"
console.log(str.split('@'));//['abc', 'def', 'ghi', 'jql']

十、大小写转换👇

toUpperCase() - 将字符串转换为大写
toLowerCase() - 将字符串转换为小写
toLocaleLowerCase() - 转化为本地格式的小写
toLocaleUpperCase() - 转化为本地格式的大写

//toUpperCase()  - 将字符串转换为大写
let str = 'hello'
console.log(str.toUpperCase());//HELLO
//toLowerCase()  - 将字符串转换为小写
let str1 = 'HETTO'
console.log(str.toLowerCase());//hello
//toLocaleLowerCase() - 转化为本地格式的小写
console.log(str.toLocaleLowerCase());//hello
//toLocaleUpperCase() - 转化为本地格式的大写
console.log(str.toLocaleUpperCase());//HELLO

十一、去除空格—>trim()与trimStart()与trimEnd()

trim() - 去除前后空格
trimStart() - 去除开始空格
trimEnd() - 去除结束空格

let str = "    ab  c     "
console.log(str.trim());//ab  c
console.log(str.trimStart());//ab  c     
console.log(str.trimEnd());//    ab  c

十二、值类型转引用类型—>toString()

调用toString()方法将其他类型转换为字符串
由于null和undefined中没有toString(),所以对这两个东西调用toString()时会报错!!!⭐

//将number转换为string
let a = 10
console.log(typeof a);//number
console.log(typeof a.toString());//string
//将Boolean转换为string
let a = true
console.log(typeof a);//boolean
console.log(typeof a.toString());//string
//将bigint转换为string
let a = 11n
console.log(typeof a);//bigint
console.log(typeof a.toString());//string

最后:👏👏😊😊😊👍👍

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值