リモート サービスとの javascript (nodejs) 統合を構築しています。このサービスは一貫性のない形式の結果を返します。JavaScript 内から、応答に基づいて形式を切り替える方法を決定するのに苦労しています。
以下に 2 つの形式を示します。1 つ目は親が 1 つの子を持つ場合で、2 つ目は親が 1 つ以上の子を持つ場合です。
var single = { "Parent" : { "name" : "foo" } }
var multi = { "Parent" : [ { "name" : "foo" }, { "name" : "bar" } ] }
そのため、「name」の子属性にアクセスして js で結果を解析しようとすると、一貫性のない結果が得られます。
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;
}
返される結果が 1 つなのか複数なのかを判断する最善の方法は何ですか? マルチの「配列」を取得することを期待して、「typeof response」を試しましたが、うまくいきませんでした。オブジェクトは最初は文字列として受信されますが、JSON.parse(responseString)
.