收藏!!最全的字符串函数方法,看完再也不会忘记了~

简介: 收藏!!最全的字符串函数方法,看完再也不会忘记了~

1、通过字符串函数获取字符串指定位置字符

1.1 charAt()

从某个字符串取得具体的字符,如果index的位置不在字符串中则返回空字符串

let str = 'JsCoding';
// 语法
demo.charAt(index)
// demo
str.charAt(3)   =>  'o'

1.2 charCodeAt()

和chartAt()用法类似,只不过返回的是字符串的Unicode。同理,如果index下标不在字符串中,则返回空。

let str = 'JsCoding';
// 语法
demo.charCodeAt(index)
// demo
str.charCodeAt(3)   =>  '111'

2、通过字符串函数对字符串的样式进行改变

2.1 big

将字符串字号变大,并返回新的字符串。

let txt = 公众号:执行上下文
txt.big()

2.2 small

将字符串字号变小,并返回新的字符串。

let txt = 公众号:执行上下文
txt.small()

2.3 bold

将字符串字体加粗,并返回新的字符串。

let txt = 公众号:执行上下文
txt.bold()

2.4 italics

将字符串设为斜体,并返回新的字符串。

let txt = 公众号:执行上下文
txt.italics()

2.5 blink

将字符串设为闪动,并返回新的字符串。

let txt = 公众号:执行上下文
txt.blink()

2.6 fixed

将字符串以打印机文本显示,并返回新的字符串。

let txt = 公众号:执行上下文
txt.fixed()

2.7 strike

将字符串加上删除线,并返回新的字符串。

let txt = 公众号:执行上下文
txt.strike()

2.8 fontcolor

设置字符串指定颜色,并返回新的字符串。

let txt = 公众号:执行上下文
txt.fontcolor('Blue')

2.9 fontsize

设置字符串指定字号,并返回新的字符串。

let txt = 公众号:执行上下文
txt.fontsize(22)

2.10 toLowerCase

将字符串转化为小写,并返回新的字符串。

let txt = 公众号:执行上下文
txt.toLowerCase()

2.11 toUpperCase

将字符串转化为大写,并返回新的字符串。

let txt = 公众号:执行上下文
txt.toUpperCase()

2.12 sub

将字符串显示为下标,并返回新的字符串。

let txt = 公众号:执行上下文
txt.sub()

2.13 sup

将字符串显示为上标,并返回新的字符串。

let txt = 公众号:执行上下文
txt.sup()

2.14 link

将字符串显示为链接,并返回新的字符串。

let txt = 公众号:执行上下文
txt.link()

Demo戳这里查看!!!

3、判断指定字符是否出现在字符串中,并返回其位置

3.1 indexOf()

判断指定字符首次出现在字符串中的位置,没有则返回-1。检查方式从前往末尾,下标0开始。

let str = 'JsCoding';
// 语法 value => 指定字符,startindex => 指定位置开始
demo.indexOf(value,startindex)
// demo
str.indexOf('s')   =>  1
str.indexOf('s', 3)   =>  -1

3.2 lastIndexOf()

判断指定字符最后一次出现在字符串中的位置,没有则返回-1,检查方式为从末尾往前。如果指定的value值在指定位置之前,则返回的是最后一个出现value的位置。

let str = 'JsCoding';
// 语法 value => 指定字符,startindex => 指定位置开始
demo.lastIndexOf(value,startindex)
// demo
str.lastIndexOf('s')   =>  1
str.lastIndexOf('s', 3)   =>  1

注意:indexOf() 和 lastIndexOf() 都区分大小写。

4、对字符串进行操作

4.1 replace()

用于字符串中以指定字符替换指定字符。

let str = 'JsCoding';
// 语法 regexp/substr => 需要替换的文本或正则对象,replaceText => 替换的文本
demo.replace(regexp/substr,replaceText)
// demo
str.replace(/JsCoding/, 'JsCoding:是执行上下文的微信号')   
// 结果 => 
"JsCoding:是执行上下文的微信号"

4.2 slice()

获取字符串中的某个部分,并返回获取的部分。

let str = 'JsCoding';
// 语法 start => 起始位置,end => 结束位置
demot.slice(start,end)
// demo
str.slice(1,3)   
// 结果 => 
"sC"

4.3 substr()

获取字符串从指定位置开始,指定长度的字符。

let str = 'JsCoding';
// 语法 start => 起始位置,length => 长度
demo.substr(start,length)
// demo
str.substr(1,3)   
// 结果 => 
"sCo"

4.4 substring()

获取字符串指定区间的字符。

let str = 'JsCoding';
// 语法 start => 起始位置必须为存在的下标,end => 结束位置可以为负数,则往前寻找。
demo.substring(start,end)
// demo
str.substring(1,3)   
// 结果 => 
"sC"
str.substring(3,-3)   
// 结果 => 
"JsC"
如果start === end 则返回空。

4.5 split()

将字符串分割成字符串数组。

let str = 'JsCoding';
// 语法 separator => 字符串or表达式,howmany => 分割字符串的长度。
demo.split(separator,howmany)
// demo
str.split('' ,3)   
// 结果 => 
["J", "s", "C"]
str.split('')   
// 结果 => 
["J", "s", "C", "o", "d", "i", "n", "g"]

4.6 match()

返回所有查找的关键字内容的数组。

let str = 'JsCoding';
let reg = /di/ig;
// 语法 searchvalue => 检索的字符串值,regexp => 匹配的RegExp对象。
demo.match(searchvalue or  RegExp)
// demo
str.match(reg)
// 结果 => 
["di"]
str.match('di')   
// 结果 => 
["di"]

注意:String 对象的方法 slice()、substring() 和 substr() (不建议使用)都可返回字符串的指定部分。slice() 比 substring() 要灵活一些,因为它允许使用负数作为参数。slice() 与 substr() 有所不同,因为它用两个字符的位置来指定子串,而 substr() 则用字符位置和长度来指定子串。

5、其他

anchor()

用来创建HTML锚

let text = '执行上下文'
text.anchor('前端公众号')
// 结果:
<a name="前端公众号">执行上下文</a>

6、日常小用途

6.1 将 'Coding, Js' => 'Js Coding'

var str = "Coding, Js";
str.replace(/(\w+)\s*, \s*(\w+)/, "$2 $1");
// 结果
"Js Coding"

6.2 将双引号变成单引号

var str = '"Js", "Coding"'
str.replace(/"([^"]*)"/g, "'$1'");
// 结果
"'Js', 'Coding'"

6.3 将字符串第一个字母改为大写

var str = 'jjj sss ccc';
zhuan = str.replace(/\b\w+\b/g, function(c){
return c.substring(0,1).toUpperCase() + c.substring(1);}
)
// 结果
"Jjj Sss Ccc"

6.4 将字符串中指定字符替换成指定字符

var str = 'ccadjlkj3kajgl2lkjalg'
str.replace(/d/, '公众号:执行上下文')
// 结果
"cca公众号:执行上下文jlkj3kajgl2lkjalg"
相关文章
|
3月前
|
存储 编译器 C语言
烫烫烫手的结构体大小计算来咯,很烫哦,慢慢消化。自定义类型(一)
烫烫烫手的结构体大小计算来咯,很烫哦,慢慢消化。自定义类型(一)
22 2
|
编译器 文件存储 C++
一劳永逸的方法解决函数scanf报错问题
一劳永逸的方法解决函数scanf报错问题
171 0
|
8月前
|
C++
当前不会命中断点还未为文档加载任何符号
当前不会命中断点还未为文档加载任何符号
145 2
|
运维 Shell
【运维知识高级篇】超详细的Shell编程讲解4(for循环+并发问题+while循环+流程控制语句+函数传参+函数变量+函数返回值+反向破解MD5)(二)
【运维知识高级篇】超详细的Shell编程讲解4(for循环+并发问题+while循环+流程控制语句+函数传参+函数变量+函数返回值+反向破解MD5)(二)
124 0
|
运维 Shell 数据安全/隐私保护
【运维知识高级篇】超详细的Shell编程讲解4(for循环+并发问题+while循环+流程控制语句+函数传参+函数变量+函数返回值+反向破解MD5)(一)
【运维知识高级篇】超详细的Shell编程讲解4(for循环+并发问题+while循环+流程控制语句+函数传参+函数变量+函数返回值+反向破解MD5)
189 0
|
编译器 C语言 C++
C语言数组越界造成的死循环例子,当你得到了这个意想不到的结果的时候,你肯定不知道为什么,看你还敢不敢越界访问数组了
C语言数组越界造成的死循环例子,当你得到了这个意想不到的结果的时候,你肯定不知道为什么,看你还敢不敢越界访问数组了
126 0
|
数据可视化 C语言 C++
字符串函数和内存函数以及cplusplus.com/的使用技巧(一看就会)
字符串函数和内存函数以及cplusplus.com/的使用技巧(一看就会)
138 0
字符串函数和内存函数以及cplusplus.com/的使用技巧(一看就会)
|
存储 缓存 安全
诡异的字符串问题。。。
说问题前,我先跟各位读者聊一下字符串这个话题,谈起字符串也就离不开数据结构
155 0
诡异的字符串问题。。。
千万别再一直无脑使用ES6的箭头函数了,它虽然很有用但并不是万能的
相信很多小伙伴自从知道了ES6的箭头函数以后,都疯狂得使用,渐渐的淡忘了普通函数的使用。不过确实,箭头函数看起来比较简洁,用起来也舒服,不过它的出现是为了解决某一部分问题的,并不是用来替代普通函数的,所以我们不能在每一个地方都使用箭头函数
155 0
千万别再一直无脑使用ES6的箭头函数了,它虽然很有用但并不是万能的
|
算法 C语言
面试官:请说出4种不使用第三方变量交换两个变量值的方法
面试官:请说出4种不使用第三方变量交换两个变量值的方法
156 0
面试官:请说出4种不使用第三方变量交换两个变量值的方法