我正在构建与远程服务的 javascript (nodejs) 集成。该服务返回格式不一致的结果,并且在 javascript 中,我正在努力确定如何根据响应切换我的格式。
两种格式如下所示,第一种是当 Parent 有一个孩子时,第二种是当 Parent 有 >1 个孩子时:
var single = { "Parent" : { "name" : "foo" } }
var multi = { "Parent" : [ { "name" : "foo" }, { "name" : "bar" } ] }
因此,当我尝试在 js 中解析结果,访问“name”的子属性时,会得到不一致的结果:
for (var i in single) {
console.log("child name: " + single[i].name;
}
for (var i in multi.Parent) {
console.log("child name: " + multi.Parent[i].name;
}
确定我得到的是单个结果还是多个结果的最佳方法是什么?我尝试了“typeof response”,希望为 multi 获得一个“Array”,但这不起作用。该对象最初是作为字符串接收的,但使用JSON.parse(responseString)
.