JavaScript 类数组转化为数组

简介: 很多情况下我们需要将类数组的对象(key是以0到n的数字或字符串,具有length属性。例如:Arguments对象)转化为一个数组来进行各种例如forEach的数组操作,在ES5中是利用类数组对象强制调用Array对象的slice方法来进行转换的,在ES6中Array扩展了from方法来进行转换.

很多情况下我们需要将类数组的对象(key是以0到n的数字或字符串,具有length属性。例如:Arguments对象)转化为一个数组来进行各种例如forEach的数组操作,在ES5中是利用类数组对象强制调用Array对象的slice方法来进行转换的,在ES6中Array扩展了from方法来进行转换,另外,ES6中的扩展运算符也可将某些类数组对象转化为数组
各方法示例如下:

  • 强制调用Array对象的slice方法
console.log(Array.prototype.slice.call({
        '0': 'a',
        '1': 'b',
        '2': 'c',
        length: 3
    })); //Array(3) [ "a", "b", "c" ]
  • Array.from()方法
console.log(Array.from({
        '0':'a',
        '1':'b',
        '2':'c',
        length:3
    })); //Array(3) [ "a", "b", "c" ]
  • 扩展运算符...
console.log((function (a,b,c) {
        console.log([...arguments]);
    }("a","b","c"))); //Array(3) [ "a", "b", "c" ]
目录
相关文章
|
12天前
|
存储 JavaScript 索引
JS中数组的相关方法介绍
JS中数组的相关方法介绍
|
12天前
|
JavaScript Java
JS有趣的灵魂 清空数组
JS有趣的灵魂 清空数组
|
30天前
|
JavaScript
js开发:请解释什么是ES6的类(class),并说明它与传统构造函数的区别。
ES6的类提供了一种更简洁的面向对象编程方式,对比传统的构造函数,具有更好的可读性和可维护性。类使用`class`定义,`constructor`定义构造方法,`extends`实现继承,并可直接定义静态方法。示例展示了如何创建`Person`类、`Student`子类以及它们的方法调用。
21 2
|
1月前
|
JavaScript 前端开发
js开发:请解释原型继承和类继承的区别。
JavaScript中的原型继承和类继承用于共享对象属性和方法。原型继承利用原型链查找属性,节省内存但不支持私有成员。类继承通过ES6的class和extends实现,支持私有成员但占用更多内存。两者各有优势,适用于不同场景。
18 0
|
1月前
|
JavaScript 前端开发 API
常用JavaScript 数组 API大全
常用JavaScript 数组 API大全
32 0
|
5天前
|
JavaScript 前端开发 索引
JavaScript 数组中的增、删、改、查
JavaScript 数组中的增、删、改、查
|
19天前
|
JavaScript 前端开发
JavaScript数组的功能内置类型
数组是JavaScript的内置类型,JavaScript数组的功能特别强大。下面简单介绍一下JavaScript数组。
|
19天前
|
存储 JavaScript 前端开发
在浏览器中存储数组和对象(js的问题)
在浏览器中存储数组和对象(js的问题)
|
30天前
|
存储 JavaScript 索引
js开发:请解释什么是ES6的Map和Set,以及它们与普通对象和数组的区别。
ES6引入了Map和Set数据结构。Map的键可为任意类型,有序且支持get、set、has、delete操作;Set存储唯一值,提供add、delete、has方法。两者皆可迭代。示例展示了Map和Set的基本用法,如添加、查询、删除元素。
15 2
|
1月前
|
JavaScript 前端开发 数据格式
js数组常用的方法汇总
js数组常用的方法汇总
36 0