常见数组&字符串API及其应用场景总结
数组API:
String(arr):将arr中每个元素转化为字符串,逗号连接 场景:用于鉴别数据有没有修改等。
ps:String是万能的 toString 只能转换除null和undefined外的任何数据
拼接和选取一般不修改原数组,返回值
arr.join(‘连接符号’):
将arr中转化为用指定连接符连接 场景:1.空无缝拼接 2.判断arr是否空3.单词拼接成句子,加空格 4.将数组元素转化为页面内容var newArr=arr1.concat(值1,值2,arr2,值3,...) arr2中元素先打散在拼接,此api不直接修改原数组,只是返回新的数组 结合slice用操作数组
var subArr=arr.slice(i,j+1) 从i位置开始,到j位置结束,选取指定数组,返回新数组,不修改原数。
1.省略选取至结尾2.可负数3.复制数组(套路)arr.slice(0,arr.length);
修改数组:splice 直接修改原数组
var deletes=arr.splice(starti,n) 删除starti位置开始的n个元素,含头不含尾 直接修改了原数组
返回值是数组类型,保存了删除的元素
arr.splice(starti,0,值1,值2,...) 在arr中starti位置,插入新值1,值2,...此API不支持打散数组类型参数
所以后面是值1 值2 与concat不同,不支持数组的操作打散拼接。
arr.reverse() 仅负责原样颠倒数组,不负责排序
arr.sort(compare); 排序 notice 转换为字符串,在排序
arr.push();数组末尾加数组
arr.unshift()数组头部添加元素 ps:尾部 用concat
arr.pop();删除返回数组最后一个元素
shift():删除返回数组的第一个元素
String API 所有StringAPI都无权修改原字符串,只能返回新字符串
String: 其实就是一串字符组成的只读数组
vs 数组: 1. 下标
2. length
3. slice,concat
str.toUpperCase &str.to LowerCase :大小写转换
str[i]可以直接这样访问 var char=str.charAt(i) 获取指定位置字符
str.charCodeAt(i)查unicode
str.substring(starti,endi+1);不支持负数
var subStr=str.slice(starti,endi+1);支持负数 subStr和substring功能差不多都是选取
str.substr(starti,n);选取starti开始的n个
字符检索api。。。。str.indexOf str.lastIndexOf var i=str.search(/正则表达式/)
下次放正则一起总结比较优劣 用法