Javascript 数组操作笔记

(1)filter(funtion(){...}):过滤数组

该方法创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素。(JavaScript版本:1.6)

ES6写法:

var arr = ['a','b','c','a'];
var newArr = arr.filter(item=>item === 'a');
console.log(newArr);//['a','a']

ES5写法:

var arr = ['a','b','c','a'];
var newArr = arr.filter(function(item){
    return item === 'a';
});

return后面判断结果,取布尔值,true的话就添入新的filter数组中,false的话,不会添进filter的数组中。

 

(2)findIndex(funtion(){...}):

返回满足回调函数中指定的测试条件的第一个数组元素的索引值(没有匹配项则返回-1)(JavaScript版本:1.6)

var arr = ['a','b','c'];
var index= arr.findIndex(item=>item === 'a');
console.log(index);//0

 

(3)find(funtion(){...}):

用于找出第一个符合条件的数组成员(JavaScript版本:1.6)

var arr = ['a','b','c'];
var item= arr.findIndex(item=>item === 'a');
console.log(item);//a

 

(4)map(funtion(){...}):

方法返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值。(JavaScript版本:1.6)

注意: map() 不会对空数组进行检测。

注意: map() 不会改变原始数组。

var arr = [
    {id:1,name:'zhansan'},
    {id:2,name:'lisi'},
    {id:3,name:'wangwu'}];
var newArr= arr.map(item=>item.id);
console.log(newArr);//[1,2,3]

 

(5)splice(index,howmany,...item):

从数组中添加/删除项目,然后返回被删除的项目。该方法会改变原始数组(JavaScript版本:1.2)

index:必需。整数,规定添加/删除项目的位置,使用负数可从数组结尾处规定位置。

howmany:必须。要删除的项目数量。如果设置为 0,则不会删除项目

...item:可选。向数组中添加的新项目

例1:删除元素

var arr = ['a','b','c','d','e'];
var item = arr.splice(1,2);
console.log(item);//[b,c]
console.log(arr);//[a,d,e]

例2:添加元素

var arr = ['a','b','c','d','e'];
arr.splice(1,0,'insert');
console.log(arr);//['a','insert','b','c','d','e']

 

(6)sort()

用于对数组的元素进行排序(数组在原数组上进行排序,不生成副本。返回原数组)

例1:按照默认规则排序(字母排序)

var arr = ['b','add','cf'];
console.log(arr.sort());//['add','b','cf']

例2:按照自定义规则排序(按照长度排序)

var arr = ['b','add','cf'];
function utils(a,b){
    return a.length - b.length;
}
console.log(arr.sort(utils));//['b','cf','add']

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值