获取1-10(1到10)数值[1,2,3,4,5,6,7,8,9,10]数组的三种简易方法

Array.from方法

javascript 复制代码
const arr = Array.from({length: 10}, (_, index) => index + 1);
console.log(arr); // 输出结果为 [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
  • { length: 10 }: 表示要创建的新数组的长度为 10。这个对象只有一个属性 length,用于指定数组的长度。
  • _: 在回调函数中表示当前遍历的元素。在这个场景中,不需要使用当前元素的值,因此使用下划线 _ 来表示占位符。
  • index: 回调函数的第二个参数,代表当前遍历元素的索引,从 0 开始。
  • index + 1: 回调函数的返回值,表示当前元素的值。由于索引是从 0 开始的,因此需要在索引上加 1。

Array方法

javascript 复制代码
const arr = Array(10).fill().map((_, index) => index + 1);
console.log(arr); // [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
  • Array(10):创建了一个长度为10的空数组,但数组的元素都是 undefined。参数 10 指定了数组的长度为10。

  • .fill():这一方法将数组的每个元素都填充为指定的值。由于没有传递任何参数给 fill(),默认情况下会用 undefined 填充数组的每个元素。

  • .map((_, index) => index + 1):这一方法对数组中的每个元素执行指定的函数,并返回由每个函数的结果组成的新数组。使用 map() 函数来生成一个新数组,其中每个元素的值是其在数组中的索引值加1。参数 _ 表示当前元素的值,而 index 表示当前元素的索引。

javascript 复制代码
const arr = [...Array(10).keys()].map(x => x + 1);
console.log(arr); // [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
  • Array(10):这一部分创建了一个长度为10的空数组,但数组的元素都是 undefined。参数 10 指定了数组的长度为10。

  • .keys():这一方法返回一个新的 Array 迭代器对象,该对象包含数组中每个索引的键0-9。

  • [...Array(10).keys()]:这一部分利用了扩展运算符 ... 将迭代器转换为数组。得到了一个包含数字0到9的数组。

  • .map(x => x + 1):使用 map() 函数来生成一个新数组,其中每个元素的值是其索引值加1。

目前对Array.from的使用方法理解还不够透彻,后续学习后会专门出一篇对于Array.from方法的解读,仍有取得上述数组更加便捷的方法的话,还希望各位小伙儿们评论区评论哦,共同学习!

相关推荐
麦兜*5 小时前
Swift + Xcode 开发环境搭建终极指南
开发语言·ios·swiftui·xcode·swift·苹果vision pro·swift5.6.3
专注API从业者5 小时前
Python + 淘宝 API 开发:自动化采集商品数据的完整流程
大数据·运维·前端·数据挖掘·自动化
Coovally AI模型快速验证6 小时前
农田扫描提速37%!基于检测置信度的无人机“智能抽查”路径规划,Coovally一键加速模型落地
深度学习·算法·yolo·计算机视觉·transformer·无人机
pusue_the_sun6 小时前
数据结构:二叉树oj练习
c语言·数据结构·算法·二叉树
你的人类朋友6 小时前
【Node&Vue】JS是编译型语言还是解释型语言?
javascript·node.js·编程语言
萧鼎6 小时前
Python pyzmq 库详解:从入门到高性能分布式通信
开发语言·分布式·python
烛阴6 小时前
TypeScript高手密技:解密类型断言、非空断言与 `const` 断言
前端·javascript·typescript
RaymondZhao346 小时前
【全面推导】策略梯度算法:公式、偏差方差与进化
人工智能·深度学习·算法·机器学习·chatgpt
艾伦~耶格尔6 小时前
【集合框架LinkedList底层添加元素机制】
java·开发语言·学习·面试
zhangfeng11337 小时前
DBSCAN算法详解和参数优化,基于密度的空间聚类算法,特别擅长处理不规则形状的聚类和噪声数据
算法·机器学习·聚类