JavaScript数组常用方法总结

    在JavaScript中,我们需要时常对数组进行操作,现在特将常用方法总结如下:

   1.增加数据

     在JavaScript为数组增加数据主要分为两种方式。

     从数组末尾增加内容:push方法

     从数组的前端增加内容:unshift方法

     这两种方法的返回值都是数组的长度

var arr=[1,2,3];
//从末尾增加
arr.push(4);
console.log(arr);//[1,2,3,4]

//从前端增加
arr.unshift(0);
console.log(arr);//[0,1,2,3,4]

    2.删除数据

    和增加数据一样,删除数据和主要分为两种方式。

     从数组末尾增加内容:pop方法

     从数组的前端增加内容:shift方法

     这两种方法的返回值都是删除的数据

var arr=[1,2,3];
//从末尾删除
arr.pop();
console.log(arr);//[1,2]

//从前端删除
arr.unshift();
console.log(arr);//[2]


    3.从指定位置删除和增加数据

   splice(startIndex,deleteCount,addValue1,addValue2...):从数组的startIndex位置开始,删除deleteCount个数据,然后在插入addValue1,addValue2等,返回值是被删除的数组所组成的数组。

var arr=[1,2,3,4,5];
var deleteArr=arr.splice(1,2,8,9);

console.log(deleteArr);//[2,3]
console.log(arr);//[1,8,9,4,5]

    从上面所知,数组的删除方法返回的都是被删除的内容,增加的方法返回的都是数组改变后的长度。


    4.反序数组

    reverse():将数组内容逆序。

var arr=[1,2,3];
arr.reverse();
console.log(arr);//[3,2,1]

    5.将数组内容组成一个有特定分隔符的字符串

    join(seperator):将数组内容组成一个字符串,内容以seperator分隔

var arr=[1,2,3];
arr.join(',');
console.log(arr);//1,2,3

    6.合并两个数组

    concat():合并数组并返回一个新的数组,不影响原有数组。

    

var arr1=[1,2,3];
var arr2=[4,5,6];

var newArr=arr1.concat(arr2);

console.log(arr1);//[1,2,3]
console.log(arr2);//[4,5,6]
console.log(newArr);//[1,2,3,4,5,6]

    7.数组排序

    sort():默认将数组进行数字或字母进行升序排序,但也可以自定义降序排序

var arr=[3,5,1];

arr.sort();

console.log(arr);//[1,3,5];

//指定降序
var arr1=[4,2,7];
arr1.sort(function(a,b){
    return b-a;
})
console.log(arr1);//[7,4,2]

    8.截取子数组

    slice(startIndex,endIndex):截取数组中从startIndexendIndex之间的内容,不包括endIndex所在位置的内容组成一个新的数组

var arr=[1,2,3,4,5,6];

var newArr=arr.slice(1,3);

console.log(arr);//[1,2,3,4,5,6]
console.log(newArr);//[2,3]

   9.判断给定数据在数组中的位置

   indexOf(data):该方法返回data在该数组中所在的第一个元素位置,如果没有找到就返回-1

var arr=[1,2,3];

var loc=arr.indexOf(1);
console.log(loc);//0

var newLoc=arr.indexOf(4);
console.log(newLoc);//-1

    10.迭代器

    数组的迭代器方法很多。

    a.普通的遍历数组forEach(function(value,index,arr){}),其中index是索引,value是值,arr就是数组本身

var arr=[1,2,3];

//index是索引,value是值
arr.forEach(function(value,index,arr){
     console.log(''index:"+index+" "+"value:"+value)
})
    b.过滤数组:filter(),根据过滤条件过滤数组,但不会改变原有数组
var arr=[1,2,3,4];

//返回数组中大于2的内容
var newArr=arr.filter(function(item){
    return item>2;
})

console.log(arr);//[1,2,3,4]
console.log(newArr);//[3,4]
    c.映射数组:map(),对数组每个元素进行一定映射后,返回一个新数组,不会改变原有数组

var arr=[1,2,3,4];

//将数组每个值扩大一倍
var newArr=arr.map(function(item){
    return item*2;
});

console.log(arr);//[1,2,3,4]
console.log(newArr);//[2,4,6,8]



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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值