1)数组,从小到大排序
arr.sort((a, b) => {
return a - b
})
2)数组,从大到小排序
arr.sort((a, b) => {
return b - a
})
3)数组对象按某字段值,从大到小排序
arrObj.sort((a, b) => {
return b.key - a.key
})
4)shift()
把数组的第一个元素从其中删除,并返回第一个元素的值
let arr = ['A', 'B', 'C']
let shift = arr.shift()
console.log(shift) // A
console.log(arr) // ['B','C']
5)splice()
用于像数组添加或删除数据,并返回删除的数组
!!!注意会改变原始数组的大小
let Arr = ['A', "B", 'C']
let splice = Arr.splice(0, 1)
console.log(splice) // ["A"]
console.log(Arr) // ["B", "C"]
splice()更新数据
let arr = ['a', 'b', 'c', 'd'];
arr.splice(1,1,'x1');
// ["a", "x1", "c", "d"]
6)splice删除多个数据
arr: ['A', "B", "B", 'C']
for (var i = this.arr.length - 1; i >= 0; i--) {
if (this.arr[i] == 'B') {
this.arr.splice(i, 1);
}
}
console.log(this.arr) // ["A","C"]
7)判断两个数组是否相等
var a = [true, true, true, true]
var b = [true, true, true, false]
if (JSON.stringify(a) === JSON.stringify(b)) {
console.log('等于')
}
else {
console.log(JSON.stringify(a))
console.log('不等于')
}
8)遍历一个数组,每n个放入一个新数组
function chunk(arr, size) {
var rsArr = [];
for(var i=0;i<arr.length;i+=size){
var tempArr=[];
for(var j=0;j<size&&i+j<arr.length;j++){
tempArr.push(arr[i+j]);
}
rsArr.push(tempArr);
}
return rsArr;
}
chunk(["a", "b", "c", "d"], 2) // [["a", "b"], ["c", "d"]]
9)push、unshift、splice
let myArray=[11,22,33];
console.log('原数组:',myArray);
myArray.push(44,55);
console.log('用push在数组后面插入元素:',myArray);
myArray.unshift(66,77);
console.log('用unshift在数组前面插入元素:',myArray);
myArray.splice(2,0,'肾虚少年');
console.log('用splice在数组指定位置插入元素:',myArray);
10)对象数组倒序
data.reverse()