Filter 篩選資料
const scoreData = [55, 60, 67, 82, 45, 90, 58];
// filter方法
const newScore = scoreData.filter((answer) => answer >= 60);
console.log(newScore); // 輸出 [ 60, 67, 82, 90 ]
const userData = [
{ id: 1, name: "Alice", age: 30 },
{ id: 2, name: "Bob", age: 24 },
{ id: 3, name: "Charlie", age: 29 },
{ id: 4, name: "Diana", age: 35 },
{ id: 5, name: "Evan", age: 22 },
];
const filterUser = userData.filter(function (item, id, array) {
return item.id > 2;
});
console.log(filterUser);
// 輸出 [
// { id: 3, name: 'Charlie', age: 29 },
// { id: 4, name: 'Diana', age: 35 },
// { id: 5, name: 'Evan', age: 22 }
// ]
// 回呼函數可以接受最多三個參數:當前元素、當前元素的索引、以及被遍歷的陣列本身。這些參數的名稱可以隨意命名,並不需要按照特定的命名。此外,你不一定要使用所有三個參數;只使用你需要的參數即可。
Map 重新組合
// Map 重新組合,回傳薪陣列
const mapData = userData.map(function (item) {
const newObj = {};
newObj[item.name] = item.age;
return newObj;
});
// 簡易寫法重組合
let fruit = [
{ item: "Apple", price: 10 },
{ item: "Banana", price: 20 },
{ item: "Cherry", price: 30 },
];
let fruitNames = fruit.map((e) => e.item);
console.log(fruitNames); // [ 'Apple', 'Banana', 'Cherry' ]
// mapData();
// console.log(mapData); //刪除id屬性重新組合 ====>輸出: [{Alice: 30}, { Bob: 24 }, { Charlie: 29 }, { Diana: 35 }, { Evan: 22 }]