类数组和数组的区别是什么?

Posted nini123123

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了类数组和数组的区别是什么?相关的知识,希望对你有一定的参考价值。

类数组:

1)拥有length属性,其它属性(索引)为非负整数(对象中的索引会被当做字符串来处理);

2)不具有数组所具有的方法;

类数组是一个普通对象,而真实的数组是Array类型。

常见的类数组有: 函数的参数 arguments, DOM 对象列表(比如通过 document.querySelectorAll 得到的列表), jQuery 对象 (比如 $(“div”)).

类数组可以转换为数组:

//第一种方法
Array.prototype.slice.call(arrayLike, start);
//第二种方法
[...arrayLike];
//第三种方法:
Array.from(arrayLike);

PS: 任何定义了遍历器(Iterator)接口的对象,都可以用扩展运算符转为真正的数组。

Array.from方法用于将两类对象转为真正的数组:类似数组的对象(array-like object)和可遍历(iterable)的对象。

以上是关于类数组和数组的区别是什么?的主要内容,如果未能解决你的问题,请参考以下文章

这两个片段有啥区别?

Collection类

如何从片段内的列表视图打开链接网址?

numpy矩阵和数组的区别

vector和平常的数组类型有啥区别

Widget的类变量和构造函数中初始化数组的区别?