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)