javaScript(七) 字符串

**String.prototype.codePointAt(pos):**从一个字符串中返回指定位置的字符编码,pos:0~字符串长度-1,返回的是指定位置的那个字符的字符编码,如果超出长度,返回undefined,但是这个可以提取中文,1个中文等于2个字符

String.prototype.startsWith(searchString[,position])

判断字符串是否以给定的子串开头,searchString:搜索的子字符串,prosition:搜索子字符串的开始位置,默认值为0,如果找到了返回true,如果没有找到,返回false

var a=“-aaa”;

a.startsWith(“-”)   //检测是否是以-开头的字符串,返回true

String.prototype.endsWith(searchString,[,position])

判断字符串是否以给定的子串结尾,searchString:搜索的子字符串,position:搜索子字符串的开始位置,默认值为字符串长度,如果找到了返回true,如果没有找到,返回false

var a=“aaa”

a.endsWith(‘a’)   //检测是否以a结尾,这边返回true

String方法,获取字符串的位置

String.prototype.indexOf(searchValue[,fromIndex])

获取指定值在字符串中第一次出现的索引,searchValue:要查找的字符串值,fromIndex:开始查找的位置,默认为0,可选,如果找到了,返回指定的位置,如果没有找到,则返回-1

var a=‘asdzxcqwe’

a.indexOf(‘d’)  //返回2

a.indexOf(“-”)  //返回-1

a.indexOf(‘asd’)  //返回0,如果是字符串,返回的是第一个字母所在的位置

a.indexOf(‘asa’)  //返回-1,因为这个字符串当中不包含asa子字符串

String.prototype.lastIndexOf(searchValue[,fromIndex])

和indexOf对应,获取指定值在字符串中最后一次出现的索引,searchValue:要查找的字符串值,fromIndex:开始查找的位置,默认为0,可选,如果找到了,返回指定的位置,如果没有找到,则返回-1

String.prototype.includes(searchValue[,fromIndex])

判断一个字符串中是否包含搜索的字符串,searchValue:要查找的字符串值,fromIndex:开始查找的位置,默认为0,可选,如果找到了,返回true,如果没有找到,则返回false

var a=‘asdzxcqwe’

a.includes(‘d’)  //返回true

a.includes(“-”)  //返回false

a.includes(‘asd’)  //返回true

a.includes(‘asa’)  //返回false

string-匹配模式

String.prototype.search(regexp)

从一个字符串中返回与正则表达式匹配的索引值,参数regexp,是一个正则表达式返回值,是首次匹配项的索引值,如果没有则返回-1,例如

“m163”.search(“163”)  //输出1

String.prototype.match(regexp)

从一个字符串中返回与正则表达式匹配的匹配项,参数regexp,是一个正则表达式,返回值,返回的是数组,如果没有则返回null

“micromajor123”.match(“/[0-9]/”)   //输出 [“1”]

“micromajor123”.match(“/[0-9]/g”)   //输出 [“1”,“6”,“3”]

“xmasddd”.match(“[A-Z]”)  //输出null

String.protptype.replace(regex|substr,newSubstr|function)

根据规则替换字符串中的某些值,regex|substr:可以是正则表达式,也可以是字符串,newSubstr|function:可以是字符串,或者是创建字符串的函数,第二个参数是要替换的字符串,返回值是替换后的新字符串

“mmmmm163”.replace(“163”,“###”)   //输出后的新字符串为:mmmmm###

“mmmmm163”.replace(“'/[0-9]/”,“#”)   //  mmmmm#63

“mmmmm163”.replace(“/[0-9]/g”,“#”)   //mmmmm###

如果是要把数字删除,“mmmmm163”.replace(“/[0-9]/g”,“”)   //只要将第二个改成空字符串就行

String方法-字符串操作

String.prototype.substring(indexStart[,indexEnd])

从一个字符串中返回开始索引和结束索引之间的字符,包含开始但是不包含结束索引位置对应的字符,indexStart:0字符串长度,indexEnd:表示结束截取的位置,0字符串长度,可选,如果不写则一直到字符串结束,返回值是开始索引和结束索引之间的子串

“micromajor”.substring(5,7)   //“ma”,5是开始的位置(包括位置5),7是结束的位置(不包括位置7)

“micromajor”.substring(5)    //major

“micromajor”.substring(5,5)   //“”,返回的是空字符串

“micromajor”.substring(-5)   //“micromajor”,会被当作从0开始

“micromajor”.substring(11)   //“”,会被当作结束开始

案例:如何获取判断.jpg结尾

var a=value.lastIndexOf(“.”)  //获取.最后一次出现的位置

var fileType = value.substring(a+1)  //从.的下一位开始计算,获取到结束位置的字符串,判断是否是jpg结尾的文件

String.prototype.slice(beginSlice[,endSlice])

提取字符串的一部分,返回新的字符串,包括开始但不包括结束索引对应的字符串,beginSlice:开始截取的位置,整数,如果是负数的话, 会被当作字符串长度-beginSlice的值,endSlice:结束位置,整数,可选,如果不填,表示到字符串结尾,另外注意,这边的结束位置如果是负数,那么就是字符串长度+“负数”,返回值是提取的新字符串

“micromajor”.slice(5,7)   //“ma”,5是开始的位置(包括位置5),7是结束的位置(不包括位置7)

“micromajor”.slice(5)    //major

“micromajor”.slice(-3)   //“jor”,从字符串长度,也就是末尾开始-3的位置开始截取

“micromajor”.slice(1,-1)   //“icromajo”

案例:如何获取判断.jpg结尾

var fileType = value.slice(-3)  //因为jpg是3位的,直接截取后三位,判断是否是jpg结尾的

String.prototype.substr(start[,length])

从一个字符串中返回从指定位置开始到指定字符数之间的字符,start:开始提取字符的位置,整数,length:截取的字符数量,可选,不填的话表示到字符串结束,返回值是从指定位置开始到指定字符数的字符

“micromajor”.substr(5,2)  //ma,从第5位开始,截取2位

“micromajor”.substr(5)  //major

“micromajor”.substr(-1)   //r,对于负数的处理和slice一样,都是从最后位开始计算,相当于.length-1

案例:如何获取判断.jpg结尾

var fileType = value.substr(-3)  //因为jpg是3位的,直接截取后三位,判断是否是jpg结尾的

String.prototype.split([fanhuiu][,limit])

根据分隔符分隔字符串,以数组的形式返回,fanhuiu:分隔符字符串,字符或者是正则表达式,limit:限定返回的分割片段数量,整数,可选

“micro major”.split(“ ”)   //[“micro”,“major”],空格分隔符

“micro major”.split(“ ”,1)   //[“micro”]

“micro2major”.split(“/[0-9]/”)   //[“micro”,“major”]

案例:如何获取判断.jpg结尾

最后

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数初中级Android工程师,想要提升技能,往往是自己摸索成长,自己不成体系的自学效果低效漫长且无助。

因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点!不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!

如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
img-QcflsSO9-1715529189409)]

[外链图片转存中…(img-GldHPkyy-1715529189410)]

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点!不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!

如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值