【问题标题】:Finding a value of a property in a JavaScript object inside an array在数组内的 JavaScript 对象中查找属性的值
【发布时间】:2016-09-09 13:59:38
【问题描述】:

我已经设法从我的 firebase 数据库中拉回一些用户并将它们输出到控制台中

[Object, Object, Object, Object, Object]

每个对象都有:

gender: "male"
liked: "liked"
name: "ed"
not_liked: "liked"
username: "ed@ed.com"
useruid: "HSRcN6PuylXbv87kSWxKVtWffaI3"

我怎样才能遍历数组并说出 useruid 的值是否为 HSRcN6PuylXbv87kSWxKVtWffaI3 然后 console.log() 关联的名称。在这种情况下ed

我的伪尝试:

if (Object.gender.includes('male')) {
    console.log('yes')
} 
else {
    console.log('nah')
}

【问题讨论】:

  • 使用循环和 if 语句?请向我们展示您的尝试。
  • 更新代码@Bergi
  • 但是循环在哪里,Object 是什么?当你说你对useruid 感兴趣时,你为什么要访问gender

标签: javascript arrays object iterator


【解决方案1】:

考虑到您将数组存储在 javascript 中的 dataArray 变量中。

for (i = 0; i < dataArray.length; i++) { 
    if(dataArray[i].useruid=="HSRcN6PuylXbv87kSWxKVtWffaI3"){
        console.log(dataArray[i].username);
    }
}

它将在控制台上为userid=HSRcN6PuylXbv87kSWxKVtWffaI3打印username

【讨论】:

  • 没问题。如果有任何问题,请告诉我
【解决方案2】:

只需循环遍历您的数组并在找到匹配项时抛出一个日志。

for(var i = 0; i < arr.length; i++) {
     if(arr[i].useruid === "HSRcN6PuylXbv87kSWxKVtWffaI3") {
          console.log(arr[i].username);
     }
}

至于你的伪尝试:

for(var i = 0; i < arr.length; i++) {
     if(arr[i].gender === "male") {
          console.log("User is male");
     }
     else {
          console.log("User is female");
     }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-04-11
    • 1970-01-01
    • 2022-07-08
    • 1970-01-01
    • 2016-07-26
    • 1970-01-01
    • 2021-06-25
    相关资源
    最近更新 更多