创建数组
    1、new Array(‘1’,’2’)
    2、const Array = [1,2,3]

    1. let array = [1,2,3]
    2. let hd = array
    3. hd[0] = 'qihuanran'
    4. console.log(hd) //['qihuanran',2,3]
    5. console.log(array) //['qihuanran',2,3]

    hd和array共用的是一个内存空间,只是地址发生了变化,这是引用类型的特点。
    image.png
    多维数组

    1. let lesson = [['hello'],['1','2']]
    2. console.log(lesson[1][1]) // 1
    3. let lesson = [{name: 'php',age: '123'},{name: 'qihuanran', age: '23'}]
    4. console.log(lesson[0].name) // php

    展开语法

    1. let arr = ['qihuanr', 'houdunren']
    2. let array = ['1', '2']
    3. let arrlist = [...arr,...array]
    4. console.log(arrlist) // ['qihuanr', 'houdunren','1', '2']
    1. function array(...ages) {
    2. console.log(ages)
    3. }
    4. array(1,2,3,4)

    数组的基本操作
    **
    slice(起始位置,结束位置) //赋值取
    splice(起始位置,移除个数,替换参数) //剪切数组。修改原数组
    indexof() //从左查找
    lastindexof() //从右查找
    includes(查找值) //查找数组
    includes实现

    1. let arr = [1,2,3,4,5,6]
    2. function includes (array, find){
    3. for (let value of array) {
    4. if (value === find) return true
    5. }
    6. return false
    7. }
    8. console.log(includes(arr, 4))
    9. // 返回4

    find() //查找 直接找到的返回值。并且可以对引用类型的数据进行查找
    findIndex() // 返回的是找到的索引
    find实现

    1. //find实现
    2. function find(array, callback) {
    3. for (let value of array) {
    4. if (callback(value)) return value
    5. }
    6. return undefined
    7. }
    8. let arr = [1,2,3,4,5,6]
    9. console.log(arr, function(item) {
    10. return item == 2
    11. })
    12. // 返回2

    sort((a,b) => {return a-b}) // 排序 负数从小到大
    every() //一但有不满足条件的 就返回false
    some() // 一但有一个值为真。所有的都通过
    filter() // 数组过滤

    1. const arrays = lessons.filter(item => {
    2. return item.state == 1
    3. })
    4. console.log(arrays)
    5. // 返回的是数组中state为1的数据

    手动实现filter

    1. let hd = [1,2,3,4,5,6]
    2. function filter(array, callback){
    3. let newArray = []
    4. for(let value of array) {
    5. if (callback(value) === true) {
    6. newArray.push(valye)
    7. }
    8. }
    9. return newArray
    10. }
    11. console.log(filter(hd,function(item) {
    12. return item > 2
    13. }))
    14. // 输出3,4,5,6

    reduce(上一次返回的值,数组,下标,原数组) //
    reduce去重

    1. let arr = [1,2,3,1,2,1,1,1]
    2. let newArr = arr.reduce(function(arr, cur) {
    3. if (arr.includes(cur) === false) {
    4. arr.push(cur)
    5. }
    6. return arr
    7. }, [])