-2

応答として取得する次の JSON があります。

{
    "responseHeader": {
        "status": 0,
        "QTime": 1
    },
    "spellcheck": {
        "suggestions": [
            "goo",
            {
                "numFound": 4,
                "startOffset": 0,
                "endOffset": 3,
                "suggestion": [
                    "good",
                    "google",
                    "google's",
                    "goodbye"
                ]
            },
            "collation",
            "good"
        ]
    }
}

クエリに基づいて、次の JSON を取得することがあります。

{
    "responseHeader": {
        "status": 0,
        "QTime": 1
    }
}

「スペルチェック」が存在しない場合に、jQuery コードをチェックインしたいと考えています。そうしないと、例外が発生し、スクリプトの実行が停止するためです。

私はこれを試しました:

if(typeof(response.spellcheck)!=='undefined')

しかし、それは例外をスローします。

ヘルプ。

4

4 に答える 4

1

あなたはただ言うことができますif(response && response.spellcheck)...

于 2013-07-08T11:24:05.080 に答える
1

試してくださいhasOwnProperty

if(response.hasOwnProperty("spellcheck")) {
    ...
}
于 2013-07-08T11:24:15.830 に答える
0

試すif (response && response.hasOwnProperty('spellcheck') && response.spellcheck) {/*your code here*/}

于 2013-07-08T11:49:05.957 に答える