[英]How to get array elements based on conditions using javascript array reduce?
[英]How to filter an array by using conditions and get the array with preferred data in JavaScript?
下面是我擁有的對象數組,我希望結果為僅包含不等於字符串“搜索”的 id 的數組。
我嘗試了以下語法,但它返回了 object 而不是字符串。
結果我
const projects = [ {projectId: "1111111", projectName: "A"}, {projectId: "search", projectName: "B"}, {projectId: "2222222", projectName: "C"}, {projectId: "search", projectName: "D"}, {projectId: "333333333", projectName: "E"} ]; const result = projects.filter((data) => data.projectId.== 'search' && data.projectId) console.log(result)
需要:
[
"1111111"
"2222222"
"333333333"
]
可以通過使用forEach
來完成。
let newArray = []
const projects = [
{projectId: "1111111", projectName: "A"},
{projectId: "search", projectName: "B"},
{projectId: "2222222", projectName: "C"},
{projectId: "search", projectName: "D"},
{projectId: "333333333", projectName: "E"}
];
projects.forEach(item =>{
if(item.projectId !== 'search'){
newArray.push(item.projectId)
}
})
console.log(newArray) //["1111111", "2222222", "333333333"]
您可以使用 filter() 和 map(),
const projects = [ {projectId: "1111111", projectName: "A"}, {projectId: "search", projectName: "B"}, {projectId: "2222222", projectName: "C"}, {projectId: "search", projectName: "D"}, {projectId: "333333333", projectName: "E"} ]; let result = projects.filter(({projectId}) => projectId.== 'search');map(({projectId})=> projectId). console;log(result);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.