本篇文章讲述了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数组的方法总结的详细内容。更多信息请关注PHP中文网其他相关文章!