Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/425.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何访问JS对象属性的值_Javascript_For Loop - Fatal编程技术网

Javascript 如何访问JS对象属性的值

Javascript 如何访问JS对象属性的值,javascript,for-loop,Javascript,For Loop,我试图从以下javascript对象中提取测量值: [{ "id": "RJLGscviug-dg3zqAAAa", "name": "john", "room": "dormitory", "survey": {"Q1":"A","Q2":"B","Q3":"C"}" }] 但是,下面my函数中的console log语句返回“survey”,而不是作为对象的survey值。以下是我正在使用的代码: const getAllSurveys = (use

我试图从以下javascript对象中提取测量值:

[{
    "id": "RJLGscviug-dg3zqAAAa",
    "name": "john",
    "room": "dormitory",
    "survey": {"Q1":"A","Q2":"B","Q3":"C"}"
}]
但是,下面my函数中的console log语句返回“survey”,而不是作为对象的survey值。以下是我正在使用的代码:

    const getAllSurveys = (users) => {
      var surveys = [];
      for(var user of Object.keys(users)){
        for (var userData of Object.keys(users[user])) {
          if(userData == "survey"){
            console.log(userData);
            surveys.push(userData);
          }
        }
      }
      return surveys;
    }
如何获取surveys.pushuserData以推送值而不是名称?

您必须进行调查。pushusers[user][userData]而不是surveys.pushuserData

这将起作用:

常数数据=[{ id:RJLGscviug-dg3zqAAAa, 姓名:约翰, 房间:宿舍, 调查:{Q1:A,Q2:B,Q3:C} }]; const getAllSurveys=用户=>{ return users.reducea,c=>{ const userSurveys=Object.keysc.survey.mapq=>c.survey[q]; 返回a.concaturersurveys; }, []; };
console.loggetAllSurveysdata;我想你太复杂了,对象已经在数组索引中了。迭代数组,然后surveys.pushitem.survey将测量对象推入测量数组。return users.mapu=>u.survey…?为什么要使用for循环查找survery?如果userData==survey console.loguserData;-是的,这将记录“调查”,毫无疑问……调查。推送用户[user][userData],但为什么不直接获取值,而不在其上循环