前言

本篇文章来罗列一下关于JavaScript的一些对数组的操作的方法。首先我们从如何创建数组开始讲起。然后在详细讲讲它们在项目中的使用方法,以及他们的区别。

创建数组

字面量方式

//通过字面量的方式去创建数组
let arr = [] //创建一个空数组
let arr1 = [10] //创建一个包含数字类型的数组
let arr2 = ['泰戈尔'] //创建一个包含一个字符串的数组

Array构造函数

不传参数

不传参数的话则创建了一个空数组

let arr3 = new Array();
console.log(arr3)// []

传单个Number参数

如果只传入一个数字类型的参数,那么不是表示创建一个包含从0到100的数组,此时表示创建了一个初始长度为100的空数组,验证方法很简单,直接去控制台输出这段代码。

let arr4 = new Array(100)// 初始长度为100的空数组
console.log('输出该数组:',arr4,'\n','查看该数组的长度',arr4.length)

传多个Number参数

传入多个Number类型的参数时,这时候参数的参数将作为被创建的数组的每一项的值。

let arr5 = new Array(1,2,3,4)
console.log(arr5) //[1,2,3,4]

传入单个String参数

传入单个String参数时,直接将传入的参数作为数组的唯一项。

let arr6 = new Array('泰戈尔')
console.log(arr6) //['泰戈尔']

传入多个String参数

传入多个String参数时,多个参数都将作为该数组的每一项的值。

对象作为参数

如果传入对象作为参数,则规则和String类型时是一样的。

ES6方法创建

在ECMAScript2015中新增了几种创建数组的方式。

Array.of()

Array.of()创建数组时会将所传参数都作为数组的items的值,

let arr7 = Array.of(1,2,3)
console.log('数组',arr7,'\n','长度',arr7.length)

Array.from()

Array.from()可以直接将类数组对象可迭代对象作为第一个参数传入,然后返回一个数组。

什么是类数组对象
数组对象

数组对象即该数组的每个成员都是一个对象形式。例如:

const arr = [
    {
        name: '泰戈尔',
        age: 18,
        sex: '男'
    },
    {
        name: 'leo',
        age: 18,
        sex: '男'
    },
],

这种一个数组里面每个成员都是对象的形式在开发中经常遇到。

类数组对象

什么是类数组对象呢,我们先来看看他的定义:只包含使用从零开始,且自然递增的整数做键名,并且定义了length表示元素个数的对象(注意这句,它有个显式的length属性),我们就认为它是类数组对象,比如:

let arrObj = {0: 'one', 1: 'two', 2: 'three', 'length': 3}

类数组对象尽管达到了上面提到的要求,但是它并不具备数组的方法,没有为什么,因为它本质还是个对象。
当然我们使用Array.from()方法即可将类数组对象转化为真正的数组。

image.png

最后修改:2021 年 12 月 26 日
如果觉得我的文章对你有用,可以对我进行您主观即不限定金额大小的打赏。