JavaScript 学习笔记 《Array 数组》
发布日期:2021-06-30 14:58:56 浏览次数:2 分类:技术文章

本文共 1414 字,大约阅读时间需要 4 分钟。

JavaScript 数组技巧

判断变量是否数组 (5总方法)

这里只列推荐使用的。看全部去 https://blog.csdn.net/jx520/article/details/89894204

Array.isArray(arr)// ECMAScript 5.1 (ECMA-262) Array 版本新增原生判断Object.prototype.toString.call(arg) === '[object Array]';// Array.isArray 的备胎。

清空数组

var arr = [1,2,3];arr = [];// 经常用这个arr.length = 0;//但其实效率更高的是这个,想一想也就明白了。

从数组中删除

  • 方法返回一个新的数组对象,这一对象是一个由 begin和 end(不包括end)决定的原数组的浅拷贝。原始数组不会被改变。
  • 方法通过删除或替换现有元素或者原地添加新的元素来修改数组,并以数组形式返回被修改的内容。此方法会改变原数组。如果 deleteCount 是 0 或者负数,则不移除元素。这种情况下,至少应添加一个新元素。
// filterArray.prototype.remove = function(value){
return this.filter(function(v){
return v != value; });}var arr = [1,2,3,2,1];arr.remove(1);//[2, 3, 2]// splicearr.splice(1, 1);console.log(arr);//[1, 3, 2, 1]

截取数组

方法返回一个新的数组对象,这一对象是一个由 begin和 end(不包括end)决定的原数组的浅拷贝。原始数组不会被改变。

// [1,2,3].slice(开始索引, 结束索引); // 不包括结束索引var arr = ['A','B','C','D','E'];arr.slice(2, 4);// ["C", "D"]arr.slice(2);//  ["C", "D", "E"] 从索引2到最后一个arr.slice(0, 3);//  ["A", "B", "C"] 从索引0开始取到索引(3-1)

展平数组 flat()

展开时会清除空项

  • flat 方法,默认展开深度1级
var arr = [0, 1, 2, [3, 4]];console.log(arr.flat()); // [0, 1, 2, 3, 4]
  • 传入展开级别
var arr = [0, [1, [2, [3, [4, [5, [6, [7, [8, [9]]]]]]]]]];console.log(arr.flat(5)); // [0, 1, 2, 3, 4, 5, Array [6, Array [7, Array [8, Array [9]]]]]
  • 展开任意级别
var arr = [0, [1, [2, [3, [4, [5, [6, [7, [8, [9]]]]]]]]]];console.log(arr.flat(Infinity)); // [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

参考资料

JavaScript 学习笔记 《合并对象,合并数组》

转载地址:https://jerryjin.blog.csdn.net/article/details/90004074 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:Javascript 知识点:继承与原型链
下一篇:Spring MVC 学习笔记 5《5.3 文件下载》

发表评论

最新留言

第一次来,支持一个
[***.219.124.196]2024年04月06日 20时17分11秒