數(shù)組sort
//這里邊不是a減b的意思,
//b比a大,所以a-b 就是升序巧鸭,寫成b-a就是降序
arr.sort(
function(a,b){
return a-b;
}
)
//補(bǔ)充: 也可以跟距 a b 中的屬性來(lái)排序
arr.sort(
function(a,b){
return a.attribute - b.attribute;
}
)
數(shù)組map
//數(shù)組中,map方法舟陆,指的是是數(shù)組的映射。(可以取特定的值)
//參數(shù):回調(diào)支持3個(gè)參數(shù)耻矮,第1個(gè)是遍歷的數(shù)組內(nèi)容秦躯;第2個(gè)是對(duì)應(yīng)的數(shù)組索引,第3個(gè)是數(shù)組本身
var array = [{name:'張含韻',age:16},{name:'江一燕',age:17}]
let emails = array.map((item,index)=>{
return item.name
})
console.log(emails);
//打印["張含韻", "江一燕"]
數(shù)組findIndex
//1. 當(dāng)數(shù)組中的元素在測(cè)試條件時(shí)返回 true 時(shí), findIndex() 返回符合條件的元素的索引位置淘钟,之后的值不會(huì)再調(diào)用執(zhí)行函數(shù)宦赠。例子2就是一個(gè)很好的說明,即使后面的666和66大于50米母,但是它只找到99勾扭,就不會(huì)執(zhí)行后面的循環(huán)了。
//2.如果沒有符合條件的元素返回 -1
//例子1铁瞒,
var arr = ['a','b','c','d'];
var flag = arr.findIndex(item => {
return item === 'c';
})
console.log(flag) // 得到: 2
//例子2:
var arr2 = [1,18,2,99,666,44,66];
var flag2 = arr2.findIndex(item => {
return item > 50;
});
console.log(flag2) // 得到: 3
Es6數(shù)組去重
方法一:[...new Set(test)]
var test = [1,1,2,3,4,5,6]
[...new Set(test)]
//打印[1,2,3,4,5,6]
方法二:Array.from()
const test = ['q', 'w', 'e', 'q', 'u', 'p']
Array.from(new Set(test))
// 打印 ['q', 'w', 'e', 'u', 'p']
方法三:
function unique(arr) {
const res = new Map();
return arr.filter((a) => !res.has(a) && res.set(a, 1))
}