用Filter過濾數據之后,想給某個字段重新賦值
在使用 `filter()` 方法過濾數據后,如果你想給某個字段賦值,你可以使用 `map()` 方法來修改數組中的元素。`map()` 方法可以對數組中的每個元素應用一個函數,并返回一個新的數組。
以下是一個示例代碼,演示了如何在過濾數據后給某個字段賦值:
const items = [{ id: 1, name: 'Apple', price: 1.5 },{ id: 2, name: 'Orange', price: 2.0 },{ id: 3, name: 'Banana', price: 1.0 },{ id: 4, name: 'Grapes', price: 2.5 },];const filteredItems = items.filter(item => item.price > 1.5) // 過濾價格大于 1.5 的項目.map(item => ({ ...item, discounted: true })); // 給過濾后的項目添加一個字段 "discounted"console.log(filteredItems);
上述代碼會在過濾數據后,給符合條件的項目添加一個名為 "discounted" 的字段,并將其值設置為 `true`。最終輸出的 `filteredItems` 數組將包含符合過濾條件的項目,并且每個項目都會具有新添加的 "discounted" 字段。需要注意的是,這里使用了對象擴展操作符 `{ ...item }` 來克隆原始項目對象,以便修改其屬性。