是否改变原数组的常用方法归纳

改变原数组的:

  1. shift:将第一个元素删除并且返回删除元素,空即为undefined
  2. unshift:向数组开头添加元素,并返回新的长度
  3. pop:删除最后一个并返回删除的元素
  4. push:向数组末尾添加元素,并返回新的长度
  5. reverse:颠倒数组顺序
  6. sort:对数组排序
  7. splice:splice(start,length,item)删,增,替换数组元素,返回被删除数组,无删除则不返回

不改变原数组的:

  1. concat:连接多个数组,返回新的数组
  2. join:将数组中所有元素以参数作为分隔符放入一个字符
  3. slice:slice(start,end),返回选定元素
  4. map,filter,forEach,some,every等不改变原数组

注意:若数组的每项为对象  map 和forEach方法则会改变原数组  

 var arr=[
    {name:"小明",age:15},
    {name:"小华",age:16},
    ];
 var abc=arr.map((item,index,arr)=>{
    item.sex=""
    return item;
  });
  console.log(arr);//[{name: "小明", age: 15, sex: "男"},{name: "小华", age: 16, sex: "男"}]
  console.log(abc);//[{name: "小明", age: 15, sex: "男"},{name: "小华", age: 16, sex: "男"}]
</script>
map和forEach的区别 后者没有返回值 若案例改为forEach 则 abc为underfined

 

拓展字符串的方法:

1、str.charAt(index);  返回子字符串,index为字符串下标,index取值范围[0,str.length-1]

2、str.charCodeAt(index);  返回子字符串的unicode编码,index取值范围同上

3、str.indexOf(searchString,startIndex);  返回子字符串第一次出现的位置,从startIndex开始查找,找不到时返回-1

4、str.lastIndexOf(searchString,startIndex);  从由往左找子字符串,找不到时返回-1

5、截取字符串  str.slice(start,end);  两个参数可正可负,负值代表从右截取,返回值:[start,end) 也就是说返回从start到end-1的字符    不建议用:str.substr(start,length);   string.substring(from, to)  区别: https://www.cnblogs.com/niulina/p/5703961.html

6、字符串分割成数组  str.split(separator,limit);  参数1指定字符串或正则,参照2指定数组的最大长度

7、str.replace(rgExp/substr,replaceText)   返回替换后的字符串

 

转载于:https://www.cnblogs.com/var-chu/p/9377804.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值