之前的文章对于数组的 API 进行了整理,发现对于数组和字符串的 API 有了混淆
现在将两者都记录,并做一些比较。防止在使用中出现 bug
对比数组API和字符串API
数组:
slice(start,end)
截取数组元素, start表示开始,end表示结束(不包含end本身) start ~ end-1;如果end为空,表示截取到最后[包左不包右]splice(start,count,value...)
删除数组元素,start表示开始,count表示删除的数量,value表示删除后替换的元素;如果count为空,表示删除到最后[返回的是被删除的元素][替换、添加、删除]
字符串:
slice(start, end)
截取字符串,start开始的下标,end是结束的下标;范围start~end-1。如果end为空,从start到结尾;负数表示倒数第几个。substring(start, end)
和slice作用几乎一致,区别在于不支持负数写法,如果参数为负数,自动转成0。split(参数)
将字符串按照指定的字符转换为数组——切割字符串,参数指定的字符
字符串API
◆charAt
:根据字符串位置的索引返回指定字符
◆charCodeAt
:根据字符串位置的索引返回指定字符的十进制的unicode编码的数值。
◆indexOf
:根据字符串的字符返回索引值, 从前往后搜索。
◆lastIndexOf
:根据字符串的字符返回索引值,从后往前搜索
◆encodeURIComponent
:对url地址进行uri编码,他是window对象的方法,方法参数是字符串。
◆decodeURICompoent
:对uri编码后的url进行解码,他是window对象的方法,方法参数是字符串。
◆concat
:连接两个字符串,+的底层用的就是这个方法
◆slice
:截取划分,和数组的silce方法类似,也是指定起始索引和结束索引,来截取原字符串返回新字符串,也是截取时包括左边的索引不包括右边的索引,索引为负数则为字符串的长度加上这个负数索引,如果起始索引大于结束索引则会返回空字符串,如果只有一个起始索引则会截取到最后。
◆substr
:截取,和数组的splice方法类似,只不过这个方法只有截取没有替换,指定起始索引和要截取的长度来截取字符串,长度过大就直接等于字符串的长度,长度为负数则为0,索引为负数则字符串的长度加上这个负数索引。
◆substring
:截取划分,和字符串的slice方法类似,只不过不同的地方是,索引为负数,那么直接返回全部字符串,如果起始索引大于结束索引,就会智能替换,把小的索引作为起始索引,大的索引作为结束索引。
◆trim
:去掉字符串开头部分与结束部分的空格(IE678不支持,但是可以自己封装)。
◆replace
:替换原字符串返回新字符串,第一个参数是原字符串中的某一段字符串,第二个参数是替换掉原字符串中的某一段字符串的字符串,使用str.replace(/\s/gi,””)可以替换掉所有的空格,这种方式叫做正则表达式。
◆join
与split
方法,数组通过join方法变成字符串,字符串通过split方法变成数组
◆str.toLowerCase()
;//将str变量中的字母无论大小写都变成小写的字母,这个方法会返回新的字符串。
◆str.toUpperCase()
;//将str变量中的字母无论大小写都变成大写的字母,这个方法会返回新的字符串。
◆anchor()
方法: "我是一个锚点".anchor("mao")
等于<a name="mao">我是一个锚点</a>
◆link()
方法: "我是一个超链接".link("http://www.baidu.com")
等于<a href="http://www.baidu.com">我是一个超链接</a>
(记住这个)
- 本文作者: Jambo
- 版权声明: 本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。转载请注明出处!