JS中怎样创建特定长度的数组,方法有哪些
Admin 2022-06-30 群英技术资讯 1154 次浏览
在 JavaScript 开发中,经常需要有需要创建特定长度数组的场景,本文总结了几种创建或填充任意长度的数组的小技巧,学会了可以提升编程效率。
采用最原始的方法,手动填充所需长度的数组。
const arr = [0,0,0];
和第一种方法差不多,只是使用 for 循环创建特定长度的数组
var len = 3; var arr = []; for (let i=0; i < len; i++) { arr.push(0); }
var len = 3; var arr = new Array(len);
var len = 3; var arr = new Array(len).fill(0);
如果你用对象作为参数去 fill() 一个数组,所有元素都会引用同一个实例(也就是这个对象没有被克隆多份,Array.from() 则没有这个问题):
var len = 3; var obj = {}; var arr = new Array(len).fill(obj);
所以操作这个数组时应该比用构造函数创建的更快。不过创建数组的速度比较慢,因为引擎可能需要随着数组的增长多次重新分配连续的内存。
Array.from({length: 3}) // [ undefined, undefined, undefined ]
下面这种方式仅适用于可迭代的值,并且与 Array.from()具有类似的效果:
[...new Array(3)] // [ undefined, undefined, undefined ]
如果提供映射函数作为其第二个参数,则可以使用 Array.from() 进行映射。
Array.from({length: 3}, () => 0) // [ 0, 0, 0 ]
Array.from({length: 3}, () => ({})) // [ {}, {}, {} ]
Array.from({length: 3}, (x, i) => i) // [ 0, 1, 2 ]
var start = 2, end = 5; Array.from({ length: end - start }, (x, i) => i + start) // [ 2, 3, 4 ]
[...new Array(3).keys()] // [ 0, 1, 2 ]
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
本篇文章给大家带来了关于JavaScript的相关知识,其中主要为大家介绍了JavaScript 条件判断使用技巧详解,有需要的朋友可以借鉴参考下,下面一起来看一下,希望对大家有帮助。
JS有哪些好用的小技巧呢?下文有实例供大家参考,对大家了解操作过程或相关知识有一定的帮助,而且实用性强,希望这篇文章能帮助大家,下面我们一起来了解看看吧。
这篇文章主要介绍了Vuex及其使用方法,感兴趣的同学,可以参考下
这篇文章主要介绍了解决vue项目打包上服务器显示404错误,本地没出错的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
目录ElementUI上传Base64编码后的图片安装ElementUI按需引入(当然如果需要你也可以全部引入)上传实现ElementUI把上传的图片转为Base64ElementUI上传Base64编码后的图片自我认为ElementUI还是一个很不错的写手机端的组件,所以这次做小项目的时候就用了ElementUI的U
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008