Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/qt/6.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 如何将对象合并为一个字符串_Javascript_Reactjs_React Native_React Native Android_React Native Ios - Fatal编程技术网

Javascript 如何将对象合并为一个字符串

Javascript 如何将对象合并为一个字符串,javascript,reactjs,react-native,react-native-android,react-native-ios,Javascript,Reactjs,React Native,React Native Android,React Native Ios,假设我有一个这样的物体 ``` { "ListOfStudents": { "-LTzCztVLA0PW-duF-3e": { "StudentInfo": { "csvTestFile": { "2018-12-18": { "attendanceDate": "2018-12-18

假设我有一个这样的物体

```
{
  "ListOfStudents": {
    "-LTzCztVLA0PW-duF-3e": {
      "StudentInfo": {
        "csvTestFile": {
          "2018-12-18": {
            "attendanceDate": "2018-12-18",
            "attendanceStatus": "present"
          },
          "2018-12-19": {
            "attendanceDate": "2018-12-19",
            "attendanceStatus": "absent"
          },
          "2018-12-20": {
            "attendanceDate": "2018-12-20",
            "attendanceStatus": "present"
          }
        }
      }
    },
    "-LTz15VLA0PW-duF-123": {
      "StudentInfo": {
        "csvTestFile": {
          "2018-12-18": {
            "attendanceDate": "2018-12-18",
            "attendanceStatus": "present"
          },
          "2018-12-19": {
            "attendanceDate": "2018-12-19",
            "attendanceStatus": "absent"
          },
          "2018-12-20": {
            "attendanceDate": "2018-12-20",
            "attendanceStatus": "absent"
          }
        }
      }
    },
    "-LTz15VL515W-duF-163": {
      "StudentInfo": {
        "csvTestFile": {
          "2018-12-18": {
            "attendanceDate": "2018-12-18",
            "attendanceStatus": "absent"
          },
          "2018-12-19": {
            "attendanceDate": "2018-12-19",
            "attendanceStatus": "absent"
          },
          "2018-12-20": {
            "attendanceDate": "2018-12-20",
            "attendanceStatus": "absent"
          }
        }
      }
    }
  }
}
```
这是我的代码

我想要的是将'attendanceStatus'合并成一个字符串,但对于每个第一个对象,我想将每个名称放入字符串中,对于每个最后的对象,我想在其上放置'\n',并为每个attendanceStatus添加一个(逗号)

字符串形式的预期最终输出:

“阿尔伯特,现在,缺席,现在\n

约翰,在场,缺席,缺席\n

亚历克斯,缺席,缺席,缺席\n'

或者输出可能是这样的

```
{
  "ListOfStudents": {
    "-LTzCztVLA0PW-duF-3e": {
      "StudentInfo": {
        "csvTestFile": {
          "2018-12-18": {
            "attendanceDate": "2018-12-18",
            "attendanceStatus": "present"
          },
          "2018-12-19": {
            "attendanceDate": "2018-12-19",
            "attendanceStatus": "absent"
          },
          "2018-12-20": {
            "attendanceDate": "2018-12-20",
            "attendanceStatus": "present"
          }
        }
      }
    },
    "-LTz15VLA0PW-duF-123": {
      "StudentInfo": {
        "csvTestFile": {
          "2018-12-18": {
            "attendanceDate": "2018-12-18",
            "attendanceStatus": "present"
          },
          "2018-12-19": {
            "attendanceDate": "2018-12-19",
            "attendanceStatus": "absent"
          },
          "2018-12-20": {
            "attendanceDate": "2018-12-20",
            "attendanceStatus": "absent"
          }
        }
      }
    },
    "-LTz15VL515W-duF-163": {
      "StudentInfo": {
        "csvTestFile": {
          "2018-12-18": {
            "attendanceDate": "2018-12-18",
            "attendanceStatus": "absent"
          },
          "2018-12-19": {
            "attendanceDate": "2018-12-19",
            "attendanceStatus": "absent"
          },
          "2018-12-20": {
            "attendanceDate": "2018-12-20",
            "attendanceStatus": "absent"
          }
        }
      }
    }
  }
}
```
“艾伯特,现在,不在,现在\n现在,不在,不在\n艾伯特,不在,不在,不在\n”


一个星期以来我一直在想怎么做,但是运气不好。请帮助

我不确定这是否是您所要求的,但我希望这能让您走上正轨

let list={
“-LTzCztVLA0PW-duF-3e”:{
“学生信息”:{
“csvTestFile”:{
"2018-12-18": {
“出席者”:“2018-12-18”,
“attendanceStatus”:“出席”
},
"2018-12-19": {
“出席者”:“2018-12-19”,
“attendanceStatus”:“缺席”
},
"2018-12-20": {
“出席者”:“2018-12-20”,
“attendanceStatus”:“出席”
}
}
}
},
“-LTz15VLA0PW-duF-123”:{
“学生信息”:{
“csvTestFile”:{
"2018-12-18": {
“出席者”:“2018-12-18”,
“attendanceStatus”:“出席”
},
"2018-12-19": {
“出席者”:“2018-12-19”,
“attendanceStatus”:“缺席”
},
"2018-12-20": {
“出席者”:“2018-12-20”,
“attendanceStatus”:“缺席”
}
}
}
},
“-LTz15VL515W-duF-163”:{
“学生信息”:{
“csvTestFile”:{
"2018-12-18": {
“出席者”:“2018-12-18”,
“attendanceStatus”:“缺席”
},
"2018-12-19": {
“出席者”:“2018-12-19”,
“attendanceStatus”:“缺席”
},
"2018-12-20": {
“出席者”:“2018-12-20”,
“attendanceStatus”:“缺席”
}
}
}
}
},
结果=”;
for(让我们进入列表){
让c=list[s].StudentInfo.csvTestFile;//获取包含日期的对象
for(让d代表c){
结果+=c[d]。attendanceStatus+',;//用逗号添加状态
}
result=result.slice(0,result.length-1);//删除拖尾逗号
结果+='\n';//为每个学生添加换行符
}

控制台日志(结果)//耶
以下是使用map的实现:

let list={
“-LTzCztVLA0PW-duF-3e”:{
“学生信息”:{
“csvTestFile”:{
"2018-12-18": {
“出席者”:“2018-12-18”,
“attendanceStatus”:“出席”
},
"2018-12-19": {
“出席者”:“2018-12-19”,
“attendanceStatus”:“缺席”
},
"2018-12-20": {
“出席者”:“2018-12-20”,
“attendanceStatus”:“出席”
}
}
}
},
“-LTz15VLA0PW-duF-123”:{
“学生信息”:{
“csvTestFile”:{
"2018-12-18": {
“出席者”:“2018-12-18”,
“attendanceStatus”:“出席”
},
"2018-12-19": {
“出席者”:“2018-12-19”,
“attendanceStatus”:“缺席”
},
"2018-12-20": {
“出席者”:“2018-12-20”,
“attendanceStatus”:“缺席”
}
}
}
},
“-LTz15VL515W-duF-163”:{
“学生信息”:{
“csvTestFile”:{
"2018-12-18": {
“出席者”:“2018-12-18”,
“attendanceStatus”:“缺席”
},
"2018-12-19": {
“出席者”:“2018-12-19”,
“attendanceStatus”:“缺席”
},
"2018-12-20": {
“出席者”:“2018-12-20”,
“attendanceStatus”:“缺席”
}
}
}
}
}
常量名称='Albert,John,Alex';
让resultString=Object.keys(list.map)(l,index)=>{
让csvTestFiles=list[l].StudentInfo.csvTestFile;
返回Object.keys(csvTestFiles).map((i,innerIndex)=>{
让str=innerIndex==0?`${names.split(',')[index]},`:'';
返回str+csvTestFiles[i].attendanceStatus;
})。加入(‘,’);
}).join('\\n')。concat('\\n');//替换为“\n”如果要替换新行,concat只是在字符串后面加上最后一个“\n”

console.log(resultString)请尝试解决您的问题,并将您的数据作为文本而不是图像共享。好的,我将编辑我的帖子。如果您使用JSFIDLE?OMG,我想我的问题现在已经解决了。非常感谢你。切片(0,test.length)就是我所需要的。再次感谢你。我希望你有一天能成为百万富翁嗨,我有一个新问题,为了更好的解释,我编辑了我的帖子。如何将学生的姓名添加到解决方案中新生成的字符串中?比如说,我有一个字符串'const names='albert1,albert2,albert3',我希望这些名称从新生成的字符串的第一个位置合并起来?嗨@muhammad,我有一个新问题,编辑了我的帖子以获得更好的解释。如何将学生的姓名添加到解决方案中新生成的字符串中?比如说,我有一个字符串“const names=”Albert,John,Alex“,我希望这些名称从新生成字符串的第一个位置合并?不幸的是,您的解决方案将第一个attendanceStatus替换为该名称。如果你试着跑