数组(array-api)

    var arr = [1,2,3,4]
    var arr1 = [5,6,7,8]

    // concat 数组合并,并不会修改源数组,而是得到一个新的数组
    var arr2 = arr.concat(arr1, [10,10,10])
    console.log(arr, arr1)
    console.log(arr2)

    // 以指定字符来把数组每个元素拼接成一个字符串
    var str = arr.join('-')
    console.log(str)

    // 在arr的末尾追加一个或多个值,修改的是arr本身,push方法的返回值是新的长度
    // var len = arr.push(20, 40)
    var len = arr.push(20)
    console.log(arr)
    console.log(len) // 5

    // 把arr的最后一个元素删掉,修改的也是源数组,pop方法的返回值是被删掉的那个元素
    var num = arr.pop()
    console.log(arr)
    console.log(num)

    // shift在开头删除,unshift在开头追加

    // reverse数组元素反转,修改的是源数组
    arr.reverse()
    console.log(arr)

    // arr当中按照指定的索引截取子数组,索引含头不含尾的,不会修改源数组,而是返回一个新数组
    var arr3 = arr.slice(1,3) // 截图到的是索引1和2,不包含3
    console.log(arr3)

    var arr4 = arr.slice(2) // slice方法只传一个参数,意思就是截取到末尾
    console.log(arr4)

    var arr5 = arr.slice(-2, -1) // slice传递负数,负数代表倒数第几个
    console.log(arr5)

    var arr6 = arr.slice(1, -2) // 从2开始,截取到倒数第二个结束,不包含到数第二个
    console.log(arr6)


    // splice修改的是源数组
    var arr = [4,3,5,6,7,8]
    // 把从2开始的数据删掉
    // arr.splice(2)
    // console.log(arr)

    // 从2开始,删除3个数,删除元素里包含开始索引的
    // arr.splice(2,3)
    // console.log(arr)

    // 从2开始,删除两个数,然后在删除位置用10去替换
    // arr.splice(2, 2, 10)
    // console.log(arr)

    // 从第三个参数开始后面可以传任意多个参数,都是替换的值
    // arr.splice(2, 2, 10, 20, 30) 
    // console.log(arr)

    // 可以把第二个参数写成0,就是添加,可以在任意位置添加元素
    arr.splice(6, 0, 20)
    console.log(arr)

    var arr = [5,24,6,27,33,1,24]
    // 默认的sort是按照编码来排序,只要第一位分出顺序了,就不会看第二位
    // arr.sort()

    // 指定排序规则
    arr.sort(function (a, b) {
      // 指定规则
      // a和b是sort方法会依次去取数组里的元素
      // 如果这里的返回值大于0,那么a和b就会交换顺序,不大于0就不交换
      // return a - b // 升序
      return b - a // 降序
    })
    console.log(arr)
 

猜你喜欢

转载自www.cnblogs.com/strongerPian/p/12683239.html