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 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
第一次来,支持一个
[***.219.124.196]2024年04月06日 20时17分11秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
网站及监控利器 Pandora FMS使用体验
2019-05-01
解决Esxi5下安装Windows 8的问题
2019-05-01
如何搭建Eclipse +Apache Tomcat配置Java开发环境
2019-05-01
开源计算机集群监控Ganglia应用视频
2019-05-01
Linux软件万花筒
2019-05-01
vSphere5安装配置视频教程
2019-05-01
《Linux企业应用案例精解》一书已由清华大学出版社出版
2019-05-01
安装配置FreeBSD9全过程体验
2019-05-01
全球开源软件发展趋势分析
2019-05-01
Linux系统安全加固(一)
2019-05-01
Linux常用的安全工具
2019-05-01
Linux下网络服务的安全设置
2019-05-01
如何在MAC机器中实现移动设备WiFI上网(没有专门的无线路由器的情况)
2019-05-01
一款非常实用的在线代码分享站点
2019-05-01
教你一分钟制作自己的电子书(视频)
2019-05-01
用ipad维护Linux服务器
2019-05-01
如何用手机维护Mysql数据库
2019-05-01
企业内网信息安全实践-记ChinaUnix技术交流
2019-05-01
完成《Java编程入门》初稿
2019-05-01