JavaScript学习笔记---数组对象

## 创建数组

    1.字面量创建
        var arr = [1,2,3,4]
 
    2.构造函数创建
        var arr1 = new Array(1,2,3,4)
 
    注:数组中的数据类型可以是六大类型中的任意一种 

## 数组方法

    1. length 长度 

     可以使用for循环

    2.数组添加删除【首尾】

        pop与push 【尾部】
        pop:删除尾部,且只能删掉一个
        push:添加尾部,可以添加若干个
        shift与unshift 【头部】
        shift:删除头部,且只能删掉一个
        unshift:添加头部,可以添加若干个

    3.splice 删除、替换、添加 

        splice(m):  传一个值,从m下标开始到数组结束全部删除
        splice(m,n):  传两个值,m代表起始下标,n代表个数,并且删除
        splice(m,n,o):  传三个值,当n>0时,【替换】从下标m开始找n项替换成o
                                  当n=0时,【添加】不删除,而是在该项前进行添加

    4.sort 排序

    数组名.sort(function(参数1,参数2){    参数1,参数2 代表的是数组中相邻的两个元素
        return 参数1-参数2 ;    升序排列
        return 参数2-参数1 ;    降序排列
    })
    其中: 1.  Date.parse('字符串时间') 方法 可以将字符串时间表达转换成时间戳
           2.  参数1.localeCompare(参数2) 字母排序   a-z排序 【中英文字母排序】
    【经典排序: 1.选择排序 2.冒泡排序 3.快速排序】

     4.1  选择排序  

            排序思路: 一个和多个进行比较

     4.2 冒泡排序

            排序思路: 两两相邻比较

     4.3快速排序

            排序思路: 1.取出【删除】数组中间项
                               2.将删减后的新数组与 刚取出来的中间项逐个进行比较
                               3.设置两个空数组,若比中间项小,则放入一个空数组中,若比中间项大,则放入另一个空数组中。
                               4.反复比较,数组拼接

    5.join 拼接 

    将数组每一项按照内容拼接  将数组转化成字符串
    数组名.join('内容')

    6.concat 连接

    将多个数组连接成一个新大数组
    数组1.concat(数组2,数组3,数组n..)

    7.reverse() 反转 

    将数组顺序反转【不能排序】

    8.indexOf() 

    根据内容返回第一次出现下标值,若查找不到返回-1

    9.slice() 截取数组

        slice(m)   传一个值: 从m下标开始到数组结束全部截取
        slice(m,n) 传两个值: m起始下标,n结束下标,包前不包后截取

    10. Array.isArray(参数) 

        检测是否是一个数组 返回布尔值
        true - 是数组     false - 不是数组

## 数组迭代方法  【不改变原数组】

    1. every 方法 

    对数组循环,每个元素进行判断,如果每项都为true则结果为true【结果是布尔值】
    格式:
        数组名.every(function(【值】,【下标】){
            return 判断
        })

    2.some 方法 

    对数组循环,每个元素进行判断,如果有一项为true则结果为true,若都为false则返回false  【结果布尔值】
    格式:
        数组名.some(function(【值】,【下标】){
            return 判断
        })

    3.filter 方法 

    筛选 对数组循环,每个元素进行判断筛选,返回符合条件的值  【返回满足条件的值,组成数组】
    格式:
        数组名.filter(function(【值】,【下标】){
            return 判断
        })

    4.map 方法  

    对数组循环,每个元素进行操作【返回一个新数组】
    格式:
        数组名.map(function(【值】,【下标】){
            return 操作
        })

    5.forEach 方法 

    循环数组
    格式:
        数组名.forEach(function(【值】,【下标】){
           第一个参数 - 数组中具体值
           第二个参数 - 数组下标
        })
 
 
原文地址:https://www.cnblogs.com/shihaiying/p/13230206.html