JavaScript-数组操作方法

数组的操作方法

  • 创建数组的方法

    var arr=[1,2,3]; //字面量
    var arr = new Array(1, 2, 3)//new关键字
    
  • toString()

    toString() 把数组转换为数组值(逗号分隔)的字符串

    var arr=[1,2,3];
    arr.toString();//"1,2,3"
    
  • join()

    join() 方法也可将所有数组元素以某种制定的方式拼接为一个字符串

    var arr=[1,2,3];
    arr.join('*')//"1*2*3"
    
  • pop()push()

    pop() 方法从数组中删除最后一个元素

    var arr=[1,2,3];
    arr.pop()//返回所删除的元素3
    

    push() 方法(在数组结尾处)向数组添加一个新的元素

    var arr=[1,2,3];
    arr.push(4)//返回所删添加的元素
    
  • shift()

    shift() 方法会删除首个数组元素,并把所有其他元素“位移”到更低的索引

    var arr=[1,2,3];
    arr.shift()//返回所删除的元素1
    
  • unshift()

    unshift()方法从数组的开头添加一个新的元素,并“反向位移”旧元素

    var arr=[1,2,3];
    arr.unshift(0)//返回数组的长度4
    
  • 通过索引更改数组元素

    数组*索引(下标)*以 0 开始。[0] 是第一个数组元素,[1] 是第二个,[2] 是第三个 …

    var arr=[1,2,3];
    arr[0]=4;
    console.log(arr);//[4, 2, 3]
    
  • length

    length 属性提供了向数组追加新元素的简易方法

    var arr=[1,2,3];
    arr[arr.length]='4';
    console.log(arr);//[1,2,3,4]
    
  • 删除数组元素

    既然 JavaScript 数组属于对象,其中的元素就可以使用 JavaScript delete 运算符来删除

    使用 delete 会在数组留下未定义的空洞。请使用 pop() 或 shift() 取而代之

    var arr=[1,2,3];
    delete arr[0];
    console.log(arr);//[empty, 2, 3]
    
  • splice()

    splice() 方法可用于向数组添加新项

    • 第一个参数(2)定义了应添加新元素的位置(拼接)。

    • 第二个参数(0)定义应删除多少元素。

    • 其余参数(“Lemon”,“Kiwi”)定义要添加的新元素

    var arr=[1,2,3];
    arr.splice(3,0,4);
    console.log(arr);//[1, 2, 3, 4]
    

    使用solice()删除元素

    • 第一个参数(0)定义新元素应该被添加(接入)的位置。

    • 第二个参数(1)定义应该删除多个元素。

    • 其余参数被省略。没有新元素将被添加。

    var arr=[1,2,3];
    arr.splice(1,1);
    console.log(arr);// [1, 3]
    
  • concat()

    • concat() 方法通过合并(连接)现有数组来创建一个新数组

    • concat() 方法不会更改现有数组。它总是返回一个新数组。

    • concat() 方法可以使用任意数量的数组参数:

      var arr=[1,2,3];
      var arr1=[1,2,3];
      var arr2=[1,2,3];
      arr.concat(arr1,arr2)// [1, 2, 3, 1, 2, 3, 1, 2, 3]
      
      
  • slice()

    slice() 方法用数组的某个片段切出新数组

    slice()方法接受两个参数:开始,结束

    如果结束参数被省略,比如第一个例子,则 slice() 会切出数组的剩余部分。

    var arr=[1,2,3,4,5,6];
    arr.slice(2,4);//[3, 4]
    arr.slice(2)//[3, 4, 5, 6]
    
  • reverse()

    reverse() 方法用于颠倒数组中元素的顺序

    注意:该方法会改变原来的数组,而不会创建新的数组

    var arr=[1,2,3,4,5,6];
    arr.reverse()//[6, 5, 4, 3, 2, 1]
    
  • sort()

    sort() 方法用于对数组的元素进行排序 ,参数可选,规定排序循序必须是个函数

    function sortNumber(a,b)
    {
    return a - b
    }
    
    var arr = new Array(6)
    arr[0] = "10"
    arr[1] = "5"
    arr[2] = "40"
    arr[3] = "25"
    arr[4] = "1000"
    arr[5] = "1"
    
    document.write(arr + "<br />")//10,5,40,25,1000,1
    document.write(arr.sort(sortNumber))//1,5,10,25,40,1000
    
  • indexOf()

    indexOf() 方法在数组中搜索元素值并返回其位置

    var fruits = ["Apple", "Orange", "Apple", "Mango"];
    var a = fruits.indexOf("Apple");//1
    
  • Array.lastIndexOf()

    Array.lastIndexOf() 与 Array.indexOf() 类似,但是从数组结尾开始搜索

    var fruits = ["Apple", "Orange", "Apple", "Mango"];
    var a = fruits.lastIndexOf("Apple");
    
  • toLocaleString()

    toLocaleString() 把数组转换为本地字符串

var arr=[1,2,3];
arr.toLocaleString();//"1,2,3"
  • Math.max.apply()

    Math.max.apply ()来查找数组中的最高值

    Math.max.apply([1, 2, 3]) 等于 Math.max(1, 2, 3)

    function myArrayMin(arr) {
        return Math.min.apply(null, arr);
    }
    
  • Math.min.apply()

    Math.min.apply ()来查找数组中的最高值

    Math.min.apply([1, 2, 3]) 等于 Math.min(1, 2, 3)

    function myArrayMin(arr) {
        return Math.min.apply(null, arr);
    }
    
  • 我的Min/Max JavaScript方法

    查找最大值

    function myArrayMax(arr) {
        var len = arr.length
        var max = -Infinity;
        while (len--) {
            if (arr[len] > max) {
                max = arr[len];
            }
        }
        return max;
    }
    

    查找最小值

    function myArrayMin(arr) {
        var len = arr.length
        var min = Infinity;
        while (len--) {
            if (arr[len] < min) {
                min = arr[len];
            }
        }
        return min;
    }
    
  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值