zoukankan      html  css  js  c++  java
  • js数组的操作

        js中数组的使用非常普遍,以下是一些常用的方法和属性,数组以arr=[1,2,3,4]举例。

    1.length属性

        获取数组的长度,arr.length返回4。

    2.indexOf()和lastIndexOf()方法

        数组是通过indexOf()来搜索一个指定的元素的位置,例如arr.indexOf(1)返回0,如果数组中不存在的元素则返回-1。

    3.slice()方法

        截取数组的部分元素,arr.slice(0,2)截取从索引0开始到索引2结束,arr.slice(2)截取从索引2开始到结束,arr.slice()复制一个数组。

    4.push()和pop()方法

        末尾添加/删除元素,arr.push(5),数组在末尾添加一个元素,arr.pop(),删除数组末尾一个元素。

    5.unshift()和shift()方法

        头部添加/删除元素,arr.unshift(5),数组在头部添加一个元素,arr.shift(),删除数组头部一个元素。

    6.sort()方法

        对当前数组进行排序。

    var a = [33,4,1111,222];
    a.sort()                      // 字母表顺序 [1111,222,33,4]
    a.sort(function(a,b){         // 数值大小相反的顺序
        return a-b;        
    })
    a.sort(function(){a,b}{return b-a})  // 数值大小相反的顺序

    7.reverse()方法

        把整个Array的元素给掉个个。

    8.splice()方法

        array.splice(index,howmany,item1,item2,........,itenX)。

    参数描述
    index 必需。整数,规定添加/删除项目的位置,使用负数可从数组结尾处规定位置。
    howmany 必需。要删除的项目数量。如果设置为 0,则不会删除项目。
    item1, ..., itemX 可选。向数组添加的新项目。

    9.join()方法

        把当前Array的每个元素都用指定的字符串连接起来,然后返回字符串。

    10.concat()方法

        把当前的Array和另一个Array连接起来,并返回一个新的Array。

    添加:

        ECMAScript5 定义了9个新的数组方法来遍历、映射、过滤、检测、简化和搜索数组

    11.forEach()

        forEach()方法从头至尾遍历数组,为每个元素调用指定的函数。使用forEach()回调函数三个参数分别为:数组元素、元素的索引、数组本身

    var data = [1,2,3,4,5];
    var sum = 0;
    data.forEach(function(value){
      sum += value; 
    })
    sum => 15
    data.forEach(function(value,i,a){
      a[i] = v+1
    })
    data => [2,3,4,5,6]

    12.map()

        map()方法将调用的数组每个元素传递给指定函数,并返回一个数组,它包含该函数的返回值

    a = [1,2,3]
    b = a.map(function(x){
       return x*x     
    })
    b => [1,4,9]

    注:map()返回的新数组,它不修改调用的数组

    13.filter()

        fliter()方法返回的数组元素是调用的数组的一个子集,传递的函数是用逻辑判断的:该函数返回true或false。如果返回值为true或者能转化为true的值,那么传递给该判定函数的元素就是这个子集的元素,它将被添加到一个作为返回值的数组中

    a = [5,4,3,2,1]
    smallvalus = a.filter(function(x){return x < 3})  //[2.1]
    everyothers = a.filter(function(x){return x%2 ==0})  //[5,3,1]

    14.every()和some()

        

    15.reduce() reduceRight()

        

    16.其实第二个选项indexOf()和lastIndexOf()是ECMAScript 5的方法

        具体细节向上翻。

    17.总结

        数组在实际工作当中使用非常广泛,做此笔记以备查询。

  • 相关阅读:
    Go语言 0 前言
    SVM支持向量机的基本原理
    支持向量机通俗介绍
    线程句柄和线程ID的区别
    分布式事务一致性,事务补偿实战
    ResultSet is from UPDATE. No Data.
    linux 批量kill进程
    mysql数据表拷贝
    Maven assembly 打包
    JS 删除对象属性
  • 原文地址:https://www.cnblogs.com/caichunbao/p/6550129.html
Copyright © 2011-2022 走看看