一起来了解javascript数组的方法
短信预约 -IT技能 免费直播动态提醒
1、push
在数组末尾添加一个或者多个元素
var arr = [1,2,3,4];
arr.push(5);
console.log(arr);// [1, 2, 3, 4, 5]
arr.push(6,7);
console.log(arr);//[1, 2, 3, 4, 5, 6, 7]
2、pop
数组末尾删除一个,并返回删除的元素
var arr = [1,2,3,4];
console.log(arr.pop());// 4
console.log(arr); // [1,2,3]
3、unshift()
数组头部添加一个或者多个元素,返回添加后的数组长度
var arr = [4,5,6,7];arr.unshift(2,3) console.log(arr); // [2, 3, 4, 5, 6, 7] arr.unshift(1) console.log(arr); // [1, 2, 3, 4, 5, 6, 7] var arr = [4,5,6,7];
arr.unshift(2,3)
console.log(arr); // [2, 3, 4, 5, 6, 7]
arr.unshift(1)
console.log(arr); // [1, 2, 3, 4, 5, 6, 7]
4、shift()
头部删除一个元素,返回这个被删除的元素
var arr = [4,5,6,7];
console.log(arr.shift()); //4
console.log(arr); //[5, 6, 7]
5、concat()
数组合并, 不会改变原数组
var abb = [1,2,3]
var arr = [4,5,6,7];
console.log(abb.concat(arr)); // [1, 2, 3, 4, 5, 6, 7]
6、reverse()
数组翻转、会改变原数组
var arr = [1,2,3];
console.log(arr.reverse()); // [3, 2, 1]
console.log(arr); // [3, 2, 1]
7、sort( )
对数组进行从小到大的排序、会改变原数组
var arr = [1,3,8,2,5]
console.log(arr.sort()); // [1, 2, 3, 5, 8] 默认是从小到大排序
arr.sort(function fn(a,b){ // 升序
return a-b
})
console.log(arr); // [1, 2, 3, 5, 8]
arr.sort(function fn(a,b){ // 降序
return b-a
})
console.log(arr); // [8, 5, 3, 2, 1]
8、join()
把数组转换为字符串、不会改变原数组
var arr = [1,2,3,4,5]
console.log(arr.join()); // 1,2,3,4,5 默认是以逗号分割
console.log(arr.join('-')); // 1-2-3-4-5 可以在括号内定义用什么分割
console.log(arr); // [1, 2, 3, 4, 5]
9、slice()
数组截取、不会改变原数组
console.log(arr.slice(4)); // [5] 从下标为4的位置开始到最后一个结束
console.log(arr.slice(2,4));// [3, 4] 从下标为2的位置开始到4结束、但不包括下标为4 的值
console.log(arr); // [1, 2, 3, 4, 5]
10、splice()
删除、插入、会改变原数组
var arr = [1,2,3,4,5,6,7]
// 删除
console.log(arr.splice()); // [] 没穿参数返回空数组
console.log(arr.splice(4)); // [5, 6, 7] 从下标4开始删除到末尾,返回被删除的值
console.log(arr.splice(4,2));// [5, 6] 第二个参数是删除多少
console.log(arr);
// 插入
// 第一个参数是从什么位置开始,第二个是移除几个,第三个以后是添加的内容
console.log(arr.splice(1,0,3));// [] 返回空数组
console.log(arr); // [1, 3, 2, 3, 4, 5, 6, 7]
console.log(arr.splice(1,0,3,4));// [1, 3, 4, 2, 3, 4, 5, 6, 7]
总结
本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注编程网的更多内容!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341