JS 操作数组的方法

  • 1.检测数组 (判断一个值是不是数组)

    var color = ["red", "green", "blue"];
    (1) if (color instanceof Array) {}
    (2) if (Array.isArray(value)) {}

  • 2.转换方法

    var color = ["red", "green", "blue"];
    (1) toString()/toLocalString() ,把数组转化为字符串
    color.toString() // "red,green,blue"
    (2) valueOf()还是返回数组

## 操作数组的方法

  • 1.栈方法 push() pop()
  • 2.队列方法 shift() unshift() push()
  • 3.重排序方法

    反转数组 reverse()
    排序 sort() (会先调用toString,再将得到的字符串排序)

  • 4.操作方法

    (1) concat() 连接数组 array1.concat(array2,"2","4") 原数组不变
    (2) slice(x1); // 返回从x1位置开始到末尾的一个新数组 原数组不变
    slice(x1, x2); // 返回从x1位置开始到x2位置(不包含x2)的一个新数组
    var color1 = ["red", "green", "blue", "white"];
    var color2 = color1.slice(1,3); // ["red", "white"]
    (3) splice(x1, n); // 要删除的第一项的位置x1,要删除的项数n,返回被删除的项
    var color1 = ["red", "green", "blue", "white"];
    var removed = color1.splice(1,2,"aa","bb");
    // removed是 ["green", "blue"]
    // color1是 ["red", "aa", "bb", "white"];

  • 5.位置方法

    (1) indexOf() 返回查找到的位置,没找到返回-1
    (2) lastIndexOf()
    var numbers = [1,2,3,4,5,4,3,2,1];
    numbers.indexOf(4); // 3 从前往后查找
    numbers.lastIndexOf(4); // 5 从后往前查找

  • 6.迭代方法

    every() 对数组每一项运行给定函数,该函数每一项返回true则返回true
    some() 对数组每一项运行给定函数,该函数任一项返回true则返回true
    filter() 对数组每一项运行给定函数,返回该函数会返回true的项组成的数组
    map() 对数组每一项运行给定函数,返回每次函数调用结果组成的数组
    forEach() 对数组每一项运行给定函数,没有返回值

  • 7.归并方法

    reduce() 前向后 和 reduceRight() 后向前

posted @ 2017-03-31 22:55  Huang-jing  阅读(540)  评论(0编辑  收藏  举报