a === undefined
は、を確認する必要はありません。var undefined = {}
と設定できるためです。
使用void
かtypeof
オペレータのどちらか(厳密な等価===
は必要ありません):
if(data.result.parameters.q == void(0) || typeof data.result.parameters.q == 'undefined')
console.log('data.result.parameters.q is undefined');
どのようにあなたのデータは、実際に見えますか? data
,data.result
、data.result.parameters
が設定されていますか? hasOwnProperty
または一般truthinessのように、チェックするたくさんの方法があります。
if(data.hasOwnProperty('result') && data.result && data.result.hasOwnProperty('parameters'))
// now we can check if there is q in data.result.parameters
はまた、あなたのコード内でスペルエラーがあります注意してください。それは
console
、ない
colsole
です。
コンソールでエラーが発生しましたか?チェーン内の以前のオブジェクトの1つがnullの場合、エラーがスローされます。そうでなければ、 'console.log(data.result.parameters.q)'と吐き出されたものをテストすることができます。 – IrkenInvader
'console.log(data.result.parameters.q)'は本当に定義されていませんか? –
'colsole'とは何ですか? –