js将伪数组转换为标准数组的多种方法
在js中,数组是特殊的对象,凡是对象有的性质,数组都有,数组表示有序数据的集合,而对象表示无序数据的集合。
那伪数组是什么呢,当然它也是对象,伪数组一般具有以下特点:
- 按索引方式存储数据;
- 具有length属性;
- 没有数组的push、shift、pop等方法;
function的arguments对象,还有getElementsByTagName、ele.childNodes等返回的NodeList对象,或者自定义的某些对象,这些都可以是伪数组。
我们可以通过以下几种方式将伪数组转换为标准数组:
- 使用Array.prototype.slice.call();
- Array.prototype.slice.call({
- 0:"likeke",
- 1:12,
- 2:true,
- length:3
- });
- //["likeke", 12, true]
- 使用[].slice.call(),了解js原型链的都知道,实际上这种方法和第一中方法是一样的,但上面第一种方式相对效率更高。
- [].slice.call({
- 0:"likeke",
- 1:12,
- 2:true,
- length:3
- });
- //["likeke", 12, true]
- 使用ES6中Array.from方法;
- Array.from({
- 0:"lk",
- 1:12,
- 2:2013,
- 3:"长安大学",
- length:4
- });
- //["lk", 12, 2013, "长安大学"]
js将伪数组转换为标准数组的多种方法的更多相关文章
- C# 数组转换为DataTable 的三个方法
C# 数组转换为DataTable 的三个方法 using System; using System.Data; namespace ArrayToDataTable { class ArrayT ...
- numpy基础教程--将二维数组转换为一维数组
1.导入相应的包,本系列教程所有的np指的都是numpy这个包 1 # coding = utf-8 2 import numpy as np 3 import random 2.将二维数组转换为一维 ...
- javascript 伪数组与标准数组
伪数组 1. 是一个对象 2. 必须有length 属性,length 值是number 类型 3. 如果这个对象的length 不为0,那么必须要有按照下标存储的数据 标准数组 判断数据是否是标准数 ...
- [js] - js中类(伪)数组装正规数组
今天的js中使用了自定义的原型方法去重后,再调用这个获取的去重的数组传入另一个含有for循环的方法时, console.log出错: dimensions:createTime,华联石化,海油石化,青 ...
- TP5 JSON对象数组转换为普通数组
来源于:https://blog.csdn.net/lingchen__/article/details/67671047 使用TP5框架做项目时,对于数据的查询返回的都是对象,虽然也可以当做普通的数 ...
- C# 字符串数组转换为整形数组
/// <summary> /// 字符串数组转换整形数组 /// </summary> /// <param name="Content">字 ...
- JS中将一个值转换为字符串的3种方法
1.value.toString() 2."" + value 3.String(value) 第一种方法存在的问题是,它不能把null和undefined转换为字符串.还有第二种 ...
- javascript 将多维数组转换为一维数组
/** * 2013年9月去面试的时候,有面试过这样子一道题目: * 题目是这样子的:将一个多维数组转换成一维数组并返回该数组,类似 * [1,2,3,[4,5,6,[7,8]],9]转换后为:[1, ...
- JAVA将Object数组转换为String数组
java.lang.ClassCastException: [Ljava.lang.Object; cannot be cast to [Ljava.lang.String; java将Object[ ...
随机推荐
- javaScript基础知识总汇
javaScript是什么: 1.JavaScript 运行在客户端(浏览器)的编程语言 2.用来给HTML网页增加动态功能 3.用来给HTML网页增加动态功能. 4.Netscape在最初将其脚本语 ...
- 08 Python之内存管理
python中的内存管理,从浅层次来说,可以分为3个方面来讲: 1,引用计数: python中引用计数,为了跟踪内存的对象 当创建对象的时候即被引用了,当对象不再被使用时,即某个对象的引用计数为0,它 ...
- Java 从无类型参数Map到有类型参数Map传值的一个问题
import java.util.HashMap; import java.util.Map; public class MapTest { public static void main(Strin ...
- scrapy常用设置和注意点!!!!
setting里的设置 HTTPERROR_ALLOWED_CODES = [405] //这一条是忽略405错误退出进程,有可能跳到405页面,在parse注意判断,重新请求页面 爬虫里的设置 ...
- Delphi 程序调试
- Linux——Session复制中的失败的可能原因之一
组播地址问题 route add -net 224.0.0.0 netmask 240.0.0.0 dev eno16777728(自己的网卡名)
- 2019-2020-1 20199319《Linux内核原理与分析》第七周作业
进程的描述和进程的创建 进程的描述 1.操作系统内核实现操作系统的三大管理功能: 进程管理 内存管理 文件系统. 其中最核心的功能是进程管理. 2.对进程的描述:在操作系统原理中,通过进程控制块PCB ...
- 全面解析Java日期时间API
时区 GMT(Greenwich Mean Time):格林尼治时间,格林尼治标准时间的正午是指当太阳横穿格林尼治子午线时(也就是在格林尼治上空最高点时)的时间. UTC(Universal Time ...
- 19.8.12 记录Scaffold(脚手架)的常见属性及使用
Scaffold 有利于我们快速的构建页面,使用也是十分的方便. 下面记录一下其简单的使用方法 Scaffold( appBar: AppBar( title: Text('课程'), ), bo ...
- Head First设计模式 1 设计模式入门 策略模式 观察者模式
关于基本的OOP特征: OOP的几大特征是抽象 继承 封装 多态. 我们把共同的部分抽象出来作为抽象类的存在,使用继承和接口来实现多态,然后私有的部分封装起来.一定程度上说,这些概念都是简单的设计模式 ...