博客
关于我
js:详解js中的伪数组
阅读量:263 次
发布时间:2019-03-01

本文共 624 字,大约阅读时间需要 2 分钟。

伪数组的特性

如果一个对象的所有键名都是正整数或零,并且有length属性,那么这个对象就很像数组,称为伪数组。典型的伪数组有函数的arguments对象,以及大多数 DOM 元素集,还有字符串。

  • 具有length属性;
  • 按索引方式存储数据;
  • 不具有数组的push()、pop()等方法;

举例

例子1:

  • 1111
  • 1111
  • 1111

获取集合,控制台打印

在这里插入图片描述
例子2:
argumenets 对象
在这里插入图片描述

伪数组转化为真实数组

Array.prototype.slice.call(oUL);

或者 es6 的 Array.from()

Array.from(oUL);

如何实现伪数组和伪数组转化函数

// 一个伪数组var obj = {       "0": "aaa",    "1": 12,    "length": 2,    "push": Array.prototype.push,    "splice": Array.prototype.splice}// 动态改变length,并且添加新元素到数组末尾this[this.length] = arr;Array.prototype.push = function(arr) {       this.length++;}console.log(obj);obj.push("newVal");console.log(obj)

在这里插入图片描述

转载地址:http://yopo.baihongyu.com/

你可能感兴趣的文章
浅谈算法——从多项式乘法到FFT
查看>>
bug宝典JAVA篇 maven打不进xml文件
查看>>
第3.1.6章 WEB系统最佳实践 js控件之bootstrap table
查看>>
C++基础(一)数据类型
查看>>
[OpenGL ES] VBO 顶点缓冲对象
查看>>
尚硅谷2019年Netty教程 零拷贝 ----目标netty---step2.10
查看>>
springboot多模块
查看>>
打开UltraEdit,提示文件可能不是DOS格式
查看>>
vue子组件传值到父组件$emit
查看>>
ajax面试题大全
查看>>
JS判断数组中是否包含某个值
查看>>
Event Loop详解
查看>>
css面试点总结一
查看>>
牛逼设置
查看>>
foxmail配置qq邮箱,ssl连接错误
查看>>
UltraEdit不产生bak 文件可能不是DOS格式
查看>>
Linux系统Web应用安全加固
查看>>
【互联网安全】业务安全及防护(数据风控)
查看>>
云计算-大数据-云安全高等教育改革示范教材
查看>>
网站建设:简单动态网站搭建
查看>>