【js】Array.from方法介绍与用法示例

用js写算法题的时候遇到了,初始化二维数组可以用这个

在JavaScript中,Array.from 允许我们从类数组对象(array-like objects)或可迭代对象(iterable objects)创建一个新的数组实例。

Array.from简介

Array.from 是ES6(ECMAScript 2015)中引入的一个静态方法。该方法接受三个参数,并返回一个新的数组实例。

语法

javascript 复制代码
Array.from(arrayLike[, mapFn[, thisArg]])

参数

  • arrayLike: 必需,一个类数组对象或可迭代对象,它将被转换成一个数组。
  • mapFn (可选): 一个在数组元素被映射到新数组之前对它们进行操作的函数。
  • thisArg (可选): 执行 mapFn 时使用的 this 值。

返回值

一个新的数组实例,其元素从 arrayLike 中获取。

使用Array.from的示例

示例1:从类数组对象创建数组

类数组对象是那些具有 length 属性和(或)可索引元素的对象。

javascript 复制代码
// 定义一个类数组对象
var arrayLike = {
  0: 'a',
  1: 'b',
  2: 'c',
  length: 3
};
// 使用Array.from将其转换为数组
var arr = Array.from(arrayLike);
console.log(arr); // ['a', 'b', 'c']

示例2:从字符串创建数组

字符串也是可迭代对象,因此我们可以使用 Array.from 将其转换为字符数组。

javascript 复制代码
var str = 'hello';
var arr = Array.from(str);
console.log(arr); // ['h', 'e', 'l', 'l', 'o']

示例3:使用mapFn处理元素

Array.from 允许我们在创建数组时对每个元素执行一个函数。

javascript 复制代码
var arr = Array.from([1, 2, 3], function(x) {
  return x * x;
});
console.log(arr); // [1, 4, 9]

示例4:结合箭头函数

箭头函数提供了一种更简洁的方式来编写函数表达式。

javascript 复制代码
var arr = Array.from({length: 5}, (v, i) => i * i);
console.log(arr); // [0, 1, 4, 9, 16]

在上面的示例中,我们创建了一个长度为5的数组,并使用箭头函数为每个元素赋值为其索引的平方。

结论

Array.from 是一个强大的方法,它简化了从类数组对象和可迭代对象创建数组的操作。通过提供 mapFn 参数,我们可以在数组创建过程中对元素进行转换,这使得 Array.from 在处理数据时非常灵活和高效。

相关推荐
咖啡教室1 小时前
前端开发日常工作每日记录笔记(2019至2024合集)
前端·javascript
咖啡教室1 小时前
前端开发中JavaScript、HTML、CSS常见避坑问题
前端·javascript·css
市民中心的蟋蟀4 小时前
第五章 使用Context和订阅来共享组件状态
前端·javascript·react.js
我不会编程5554 小时前
Python Cookbook-5.1 对字典排序
开发语言·数据结构·python
李少兄4 小时前
Unirest:优雅的Java HTTP客户端库
java·开发语言·http
逆袭的小黄鸭4 小时前
JavaScript 闭包:强大特性背后的概念、应用与内存考量
前端·javascript·面试
Mintopia4 小时前
Node.js 中 fs.readFile API 的使用详解
前端·javascript·node.js
Face4 小时前
事件循环
前端·javascript
谦谦橘子4 小时前
服务端渲染原理解析
前端·javascript·react.js
Mintopia4 小时前
深入理解 Three.js 中的 PerspectiveCamera
前端·javascript·three.js