ホームページ >ウェブフロントエンド >jsチュートリアル >Jquery ajax が JSON オブジェクトを解析できず、無効な JSON エラーの理由と解決策を報告す​​る_jquery

Jquery ajax が JSON オブジェクトを解析できず、無効な JSON エラーの理由と解決策を報告す​​る_jquery

WBOY
WBOYオリジナル
2016-05-16 18:31:281244ブラウズ

jquery 1.4 で $.ajax() メソッドを使用して json オブジェクトを解析するときに発生した最近の問題について話しましょう。

Json オブジェクトは次のとおりです:

コードをコピー コードは次のとおりです:

[{ name:'中古住宅 販売',infoCount:0,pageUrl:'/ershoufang'},{name:'中古住宅 購入',infoCount:0,pageUrl:'/qiugou'}, {name:'中古住宅装飾', infoCount:0,pageUrl:'/esfzhuangxiu'},{name:'中古リサイクル',infoCount:0,pageUrl:'/huishou'},{name:'Second -バイク',infoCount:0,pageUrl:'/motor '},{name:'中古車買取',infoCount:0,pageUrl:'/ershoucheqg'},{name:'中古車譲渡' ,infoCount:9,pageUrl:'/ershouche'},{name:'中古車市場',infoCount:0,pageUrl:'/ershoushichang'}]


この JSON オブジェクトの問題に気づいた人がいるかどうかはわかりません。 js スクリプトおよび jquery 1.4 より前のバージョンでは、この書き方は問題ありません。 1.3 以前のバージョンでは、jQuery は JavaScript の eval メソッドを通じて json オブジェクトを解析するためです。 1.4 では、jQuery は json を解析するためにより厳密なアプローチを使用します。すべてのコンテンツは二重引用符を使用する必要があります。

これは、jQuery.parseJSON(json) からわかります。ドキュメント内の parseJSON の説明は次のとおりです。

JSON 文字列を受け入れ、解析されたオブジェクトを返します。

不正な JSON 文字列を渡すと例外がスローされます。たとえば、以下は不正な JSON 文字列です:
{test: 1} (test は二重引用符で囲まれていません)
{'test': 1} (二重引用符の代わりに一重引用符が使用されています)

さらに、何も渡さない場合、または空の文字列、null または未定義の場合、parseJSON は null を返します。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。