iT邦幫忙

0

2024 IT鐵人賽 Day21 -陣列-filter、Map

  • 分享至 

  • xImage
  •  

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 }]

圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言