如何在 JavaScript 中不使用迴圈為陣列中的專案分配新值,如果該專案與其他專案相匹配?


為此,請同時使用 filter() 和 map()。假設以下內容是我們陣列 −

const studentDetails = [
   {Name: "John"},
   {Name: "David"},
   {Name: "Bob"},
   {Name: "Mike"}
]

我們將為姓名"Bob"分配一個新值。以下為程式碼 −

示例

const studentDetails = [
   {Name: "John"},
   {Name: "David"},
   {Name: "Bob"},
   {Name: "Mike"}
]
var changeName = "Bob";
studentDetails.filter((obj) => obj.Name === changeName).map((obj) =>
obj.Name = "Carol");
console.log(studentDetails);

要執行以上程式,你需要使用以下命令 −

node fileName.js.

此處,我的檔名是 demo98.js。

輸出

這將產生以下輸出 −

PS C:\Users\Amit\JavaScript-code> node demo98.js
[
   { Name: 'John' },
   { Name: 'David' },
   { Name: 'Carol' },
   { Name: 'Mike' }
]

更新於: 07-Sep-2020

88 次瀏覽

啟動您的職業生涯

透過完成課程獲得認證

開始
廣告
© . All rights reserved.