定义

数组:一种类列表对象,它的原型中提供了遍历和修改元素的相关操作。

伪(类)数组:只有length属性、不具有Array对象方法且按索引方式存储的对象。

常见的伪数组

  • 函数的参数对象arguments;
  • 用querySelectorAll获得的集合;
  • 用getElementsByName/ClassName/TagName获得的集合;
  • 自定义类数组,eg. let arrLike = {0:‘a’,1:‘A’,length:2}。

伪数组与数组相互转换

1、数组转换成伪数组
这里与其说转换不如说是伪数组生成方法,借一个空数组调用push方法,同时通过apply改变this绑定为obj,传入数组arr。

const arrOr = [1, 2, 3];
const objOr = {};
Array.prototype.push.apply(objOr, arrOr);
console.log(objOr);
//{0: 1, 1: 2, 2: 3, length: 3}

2、伪数组转换成数组

  • Array.prototype.push.call(arrayLike)
  • […arrayLike]
  • Array.from(arrayLike)>>Array.from() 方法对一个类似数组或可迭代对象创建一个新的,浅拷贝的数组实例。

JavaScript 伪数组和数组相关推荐

  1. php伪数组转换为数组,JavaScript伪数组用法实例

    在Javascript中什么是伪数组?伪数组(类数组):无法直接调用数组方法或期望length属性有什么特殊的行为,但仍可以对真正数组遍历方法来遍历它们.本文实例讲述了JavaScript伪数组用法, ...

  2. JavaScript伪数组和数组

    文章目录 伪数组和数组 对象与数组的关系 什么是数组 什么是伪数组 常见的伪数组有: 二者区别 小结 伪数组和数组 在JavaScript中,除了5种原始数据类型之外,其他所有的都是对象,包括函数(F ...

  3. 如何快速找出找出两个数组中的_找出JavaScript中两个数组之间的差异

    LeetCode今天面临的挑战是在数组中查找所有消失的数字. 蛮力 我们的输入包括一个缺少数字的实际数组.我们想将该数组与相同长度的数组进行比较,其中没有遗漏的数字.所以如果给定的话[4,3,2,7, ...

  4. JavaScript学习笔记之数组(二)

    JavaScript学习笔记之数组(二) 1.['1','2','3'].map(parseInt) 输出什么,为什么? ['1','2','3'].map(parseInt)//[1,NaN,NaN ...

  5. JavaScript数据结构与算法——数组详解(下)

    1.二维与多维数组 JavaScript只支持一维数组,但是通过在数组里保存数组元素的方式,可以轻松创建多维数组. 1.1 创建二维数组 二维数组类似一种由行和列构成的数组表格,在JavaScript ...

  6. javascript基础系列:数组常用方法解析

    javascript基础系列:数组常用方法解析 今天是比较特殊的日子,我们编程人员共同的节日,1024,祝每个编程人员节日快乐! 数组是javascript必不可少的一项,今天让我们来总结一下数组操作 ...

  7. 伪数组转化真数组_ES6 数组方法

    nodelist伪数组转数组,让其拥有数组方法 扩展运算符 ... let arr = document.querySelectorAll('ul li'); // 当获取dom元素list的时候,所 ...

  8. JavaScript学习笔记:数组

    文章目录 一.一维数组 1.创建数组 (1)创建空数组,逐个赋值 (2)创建数组同时赋值 (3)创建字面量数组 2.添加数组元素 3.数组长度属性length 4.遍历数组 (1)传统for循环 (2 ...

  9. Javascript基础之Array数组API

    Javascript数组原型提供的方法非常之多,主要分为三种: 直接修改原数组 原数组不变,返回新数组 数组遍历方法 直接修改原数组的API pop() 删除一个数组中的最后的一个元素,并且返回这个元 ...

最新文章

  1. oracle中“ORA-00060: 等待资源时检测到死锁” 或存储过程编译卡死 解决方法
  2. 10.9 kill以及raise函数
  3. 二十年后的回眸(2)——顺风顺水的前三年
  4. 投资学习网课笔记(part4)--基金第四课
  5. 全国计算机等级考试题库二级C操作题100套(第56套)
  6. CentOs搭建svn
  7. adb native raact 夜神_React Native 与 夜神模拟器的绑定
  8. mysql in 命令
  9. Java、JSP公文流转系统分析与实现
  10. 摄像头远程监控精灵 4.65
  11. Linux gerp 命令使用方法
  12. 计算机组成原理/计算机硬件基础第五章:存储器
  13. ROS学习笔记之——amcl源码的解读
  14. python代码 练习3:空气质量查询工具
  15. 摄像机投影成像 matlab,使用matlab仿真三维物点的透视投影成像.doc
  16. Mac系统下使用SecureCRT连接Linux虚拟机及上传文件
  17. 使用正则表达式进行身份证号匹配
  18. Android Studio——飞入文字动画演示
  19. 疫情下的长租公寓:蛋壳们的“生死考”
  20. 《Python语言程序设计》第四章(选择)学习笔记

热门文章

  1. 我们可以用计算机做的事,2015地球一小时:今晚我们可以做的10件事(中英文版)
  2. 图片加载成功后显示图片
  3. 我们是如何解决TVS管使用错误的
  4. 程序员的七夕浪漫时刻
  5. 工作以后如何做读书笔记
  6. 【网络进阶】五种IO网络模型(一)
  7. 文旅融合助力沉浸式夜游体验项目的发展
  8. 珠穆朗玛币王:11月18日学会分辨 拒绝盲从
  9. 又发现一个ChatGPT体验站,辅助写代码真方便
  10. 127.0.0.1:8080可以访问但是用本机ip就无法访问