首页 >web前端 >js教程 >对JavaScript数组的方法总结

对JavaScript数组的方法总结

韦小宝
韦小宝原创
2018-03-14 18:23:041267浏览

本篇文章讲述了JavaScript数组的方法,大家对JavaScript数组的方法不了解的话或者对JavaScript数组的方法感兴趣的话那么我们就一起来看看本篇文章吧, 好了废话少说进入正题吧!

测试数组arr = [2,0,1,6];
下面各个方法对arr的测试互不影响。

shift()
删除并返回数组的第一个元素。

console.log(arr.shift());           //2
console.log(arr);                   //[1,0,6]

pop()
删除并返回数组的最后一个元素。

console.log(arr.pop());             //6
console.log(arr);                   //[2,0,1]

unshift(arg1,arg2,…)
向数组的开头添加一个或更多元素,并返回新的长度。
直接修改原有的数组,下标0处插入需要添加的值,已经存在的元素顺次地移到较高的下标处

console.log(arr.unshift(9,3,4));    //7
console.log(arr);                   //[9,5,4,2,0,1,6]

push(arg1,arg2,…)
向数组的末尾添加一个或多个元素,并返回新的长度。
直接修改数组

console.log(arr.push(9,5,4));       //7
console.log(arr);                   //[2,0,1,6,9,5,4]

concat(arr1,arr2,…)
连接两个或多个数组。
返回被连接数组的一个副本,原数组不变

var c = [2,0];
var d = [1,5]
console.log(arr.concat(c, d));      //[2,0,1,6,2,0,1,5]
console.log(arr);                   //[2,0,1,6]

join(str)
返回由str把数组元素连接成的一个字符串

console.log(arr.join(''));          //2016
console.log(arr);                   //[2,0,1,6]
//省略参数
console.log(arr.join());            //2,0,1,6

reverse()
颠倒数组中元素的顺序,数组结构改变,返回数组

console.log(arr.reverse());         //[6,1,0,2]
console.log(arr);                   //[6,1,0,2]

slice(start,end【不包括该元素】)
返回一个由start,end选择的数组
负值表示从尾部选取元素

console.log(arr.slice(1));          //[0,1,6]
console.log(arr);                   //[2,0,1,6]

console.log(arr.slice(0));          //[2,0,1,6]
console.log(arr.slice(-4));         //[2,0,1,6]
console.log(arr.slice(1,3));        //[0,1]
console.log(arr.slice(1,-1));       //[0,1]
console.log(arr.slice(-3,-1));      //[0,1]
console.log(arr.slice(-3,3));       //[0,1]

splice(index,deleteNum,arg1,arg2,…)
和这个方法可谓数组最全的方法,可以实现数组元素的,添加,修改,删除
index:操作(添加、删除)开始的位置,必选
delete:删除的数目,0表示不删除,必选
arg:添加的元素(一个或多个),可选(用于删除,修改)
返回值:删除操作返回删除元素组成的数组,其他操作返回空数组

//添加,向位置1添加数值1
console.log(arr.splice(1,0,1));     //[]
console.log(arr);                   //[2,1,0,1,6]

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

//删除,从位置2开始删除2个数值
console.log(arr.splice(2,2));       //[8,1]
console.log(arr);                   //[2,3,0,1,6]

//修改,将位置1的数值改为9
console.log(arr.splice(1,1,9));     //[3]
console.log(arr);                   //[2,9,0,1,6]

valueOf()
w3c解释,我还不太理解
valueOf() 方法返回 Array 对象的原始值。该原始值由 Array 对象派生的所有对象继承。valueOf() 方法通常由 JavaScript 在后台自动调用,并不显式地出现在代码中。

console.log(arr.valueOf());         //[2,0,1,6]
console.log(arr);                   //[2,0,1,6]

toString()
把数组转换为字符串,并返回结果

console.log(arr.toString());        //2,0,1,6
console.log(typeof arr.toString()); //string
console.log(arr);                   //[2,0,1,6]

toLocaleString()
把数组转换为本地字符串。

console.log(arr.toLocaleString());  //2,0,1,6
console.log(arr);                   //[2,0,1,6]
//特定用法
var date = new Date();
console.log(date);                  //Thu Feb 04 2016 19:51:01 GMT+0800 (中国标准时间)
console.log(date.toLocaleString()); //2016/2/4 下午7:51:01

sort()
没有使用参数,将按字母顺序对数组中的元素进行排序
返回排序后的数组

var c = ['c','d','a'];
console.log(c.sort());          //['a','c','d']
console.log(c);                 //['a','c','d']

对于sort方法,上面我只进行了字符串排序,为什么不进行数字呢? 大家平时可能数字sort排序也用过,感觉可以的,可以是可以,那种sort排序有时候会出现问题,下面有好的方法,希望借鉴~

//升序排序
console.log(arr.sort(function(a, b){
    return a - b;
}));
console.log(arr);                 //[0,1,2,6]

//降序排序
console.log(arr.sort(function(a, b){
    return b - a;
}));
console.log(arr);                 //[6,2,1,0]

以上就是本篇文章的所有内容,大家要是还不太了解的话,可以自己多实现两边就很容易掌握了哦!

相关推荐:
js数组方法扩展实现数组统计函数

javascript数组和字符串的常见用法

JavaScript数组-字符串-数学函数

以上是对JavaScript数组的方法总结的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn