超详细的js数组操作方法

超详细的js数组操作方法

1.创建数组

var members=['Lily','Lucy']

2.通过索引访问数组元素

var person=members[0]   //Lily

3.遍历数组(forEach)

members.forEach(function (item, index, array) {
    console.log(item, index);
});

4.增加元素:返回一个新数组;
添加到数组末尾 (push), 添加到数组的最前边(unshift)

var newMembers = members.push('Tom');
// newMembers: ["Lily", "Lucy", "Tom"]
var newMembers = members.unshift('Tom');
// newMembers: [ "Tom","Lily", "Lucy"]

5.删除元素:改变原数组
删除数组末尾的元素(pop),删除数组头部元素(shift)

var last = members.pop();
var first = members.shift();

6.找出某个元素在数组中的索引(indexOf)

var index = members.indexOf('Lily');//0

7.通过索引删除某个元素splice(index,length),原来的数组会发生改变

var deleteItem=members.splice(0,1)//索引为0,删除的长度为1
//deleteItem=['Lucy']

8.复制一个数组(slice)

var copyItem=members.slice()
copyItem=['Lily','Lucy']

9.array.length

//设置的length比原有数组小,会删除一些元素
members.length=1//members=['Lily']
//设置的length比原有数组大

members.length=3
console.log(members.length); // 3
//使用下标为数组元素赋值,并且该下标超出了当前数组的大小,length 的值会增大
members[5] = 'mango';
console.log(members[5]); // 'mango'
console.log(Object.keys(members));  // ['0', '1', '5']
console.log(fruits.length); // 6


10.判断所有元素是否都符合条件(every)

var arr=[1,2,3]
var result=arr.every(function(item,index){
//判断arr数组中是否每个元素都小于4
    if(item<4){
        return true
    }
})
console.log(result) //true

11.判断至少有一个元素符合条件(some)

var arr=[1,2,3]
var result=arr.some(function(item,index){
    if(item<2){
        return true
    }
})
console.log(result) //true

12.排序(sort),反向排序(reverse)

var arr=[1,5,3,2]
var arr2=arr.sort(function(a,b){
    //从小到大
    return a-b
    //从大到小
    return b-a
})
console.log(arr)//[1,2,3,5] 原数组也发生改变
console.log(arr2)//[1,2,3,5]

13.对元素重新组装,生成新数组(map)

var arr=[1,2,3]
var result=arr.map(function(item,index){
    //将元素重新组装并返回
    return '<b>'+item+'</b>'
})
console.log(arr2)   //["<b>1</b>",["<b>2</b>",["<b>3</b>"]

14.过滤符合条件的元素(filter)

var arr=[1,2,3,4]
var arr2=arr.filter(function(item,index){
    if(item>2){
        return true
    }
})
console.log(arr2)   //[3,4]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值