API は、一部の要素が含まれる場合と含まれない場合がある、定義できない深さで JSON 応答を返します。プロパティが存在するかどうかを確認するにはどうすればよいですか? 一部のパラメーターには、「@param」や「$」などの奇妙な名前が含まれています。この例は次のとおりです。
同様のチェックを書きましたが、上記の理由でドット構文を使用できません。これを変更するためのヘルプは大歓迎です。
function checkValue(objectPath) {
var keys = Object.isArray(objectPath) ? objectPath : objectPath.split(".");
if (keys[0] == "window") keys.shift();
try {
return keys.inject(window, function(obj, key) {return obj[key];});
} catch (e) {
return undefined;
}
}
テストするオブジェクトの例は次のとおりです。
var obj = {
member: {
'@member-age': {
value: 42
}
}};
checkValue(obj.member.age) でチェックする前に、この例では明らかな理由でこれを行うことができません。