1

これが私のサーバーから返された JSON です。

"[{"description":"A user","name":"test","type":"user"}]"

外側のダブルクォートを削除したい。つまり、JSONを

[{"description":"A user","name":"test","type":"user"}]

これどうやってするの?助けてください。

4

5 に答える 5

4

JSON を JS オブジェクトに変換したいですか? もしそうなら、あなたはそうするでしょうJSON.parse(json)。IE7 のサポートが必要な場合は、IE7 ではサポートされていないため、JSON のポリフィルを含める必要があります。

ここで現在の JSON ポリフィルを取得できます: https://github.com/douglascrockford/JSON-js/blob/master/json2.js

于 2012-08-24T09:12:07.970 に答える
3

サーバーからの応答は有効なJSONではないため、テキストとしてリクエストし、修正して、JSONとして解析する必要があります。ajax呼び出しdataType: 'text'のオプションで使用します。

このメソッドを使用してsubstr、最初と最後の文字を切り取ります。

data = data.substr(1, data.length - 2);

次に、JSONを解析できます。

var obj = $.parseJSON(data);
于 2012-08-24T09:18:26.433 に答える
2

文字列から最初と最後の文字を削除するには:

var fixed_string = string.substring(1, string.length - 1);
于 2012-08-24T09:17:06.823 に答える
0

あなたの場合、サーバーからの応答はjson文字列で、jsonオブジェクトに変換する必要があります

var str = '[{"description":"A user","name":"test","type":"user"}]'; 
str = eval('('+str+')');
console.log(str[0].name) //this will give test

お役に立てれば。

于 2012-08-25T04:37:07.970 に答える
0

var str = '[{"説明":"ユーザー","名前":"テスト","タイプ":"ユーザー"}]';

var data = (new Function( "return " +s))(); console.log(f);

于 2012-08-24T09:50:22.207 に答える