2016-12-24 6 views
0

少し問題があります。 は私がJSONが動作しないのはなぜですか

sprecherText = '[{"name" : "Ashwin","text":"Hi","image":"./images/char1.png"},{"name" : "Abhinandan","text":"Was geht?","image":"./images/char2.png"}]'; 

が、私はそれを解析し、このJSONファイルを持っていると私は私のスクリプトnnを使用することができます。

var mydata = $.parseJSON(sprecherText); 

しかし、JSONは読みにくいことがわかります。だから、私はこのようないくつかの行を壊そうとしました。

sprecherText = 
'[{"name" : "Ashwin","text":"Hi","image":"./images/char1.png"}, 
{"name" : "Abhinandan","text":"Was geht?","image":"./images/char2.png"}]'; 

しかし、その後、私はその後、私はそれがこの

{ 
"sprecherText":[ 
    { 
    "name":"Ashwin", 
    "text":"Hi", 
    "image":"./images/char1.png" 
    }, 
    { 
    "name":"Abhinandan", 
    "text":"Was geht?", 
    "image":"./images/char2.png" 
    } 
] 
} 

のような異なった、私はまだエラーに

をプレゼントしようとした

sprecherTextが

が定義されていないこのエラーが出ます

sprecherTextが定義されていません。

誰かがなぜアイデアを持っていますか?

+0

どのように解析する場所にスクリプトでjsonファイルをロードしていますか? – reza

+0

ヘッダの@reza私はこれを持っていました。

+0

ファイルが異なるので、ファイル名を指定する必要があります。単に 'sprecherText'を使うことはできません。 – chackerian

答えて

3

あなたの問題は、あなたが最後にbackslachをかけることなく、リテラルのラインを壊している\

var sprecherText = 
    '[{"name" : "Ashwin","text":"Hi","image":"./images/char1.png"},\ 
    {"name" : "Abhinandan","text":"Was geht?","image":"./images/char2.png"}]'; 

console.log(sprecherText) 
'[{"name" : "Ashwin","text":"Hi","image":"./images/char1.png"},{"name" : "Abhinandan","text":"Was geht?","image":"./images/char2.png"}]' 

さて、これが原因リテラルラインを壊すためにあなたの例では、動作していない

JSON.parse(sprecherText) 
[ { name: 'Ashwin', text: 'Hi', image: './images/char1.png' }, 
    { name: 'Abhinandan', 
    text: 'Was geht?', 
    image: './images/char2.png' } ] 
+0

ああ大丈夫よ、ありがとう! –

2

動作することですこの例では:

sprecherText = 
'[{"name" : "Ashwin","text":"Hi","image":"./images/char1.png"}, 
{"name" : "Abhinandan","text":"Was geht?","image":"./images/char2.png"}]'; 

これをフォローインgであり、それは問題を修正します:

var sprecherText = '[{"name" : "Ashwin","text":"Hi","image":"./images/char1.png"}, {"name" : "Abhinandan","text":"Was geht?","image":"./images/char2.png"}]'; 

コードのあなたの最後の例では、あなたが決算}が欠落しているか、あなたはそれが有効であることを確認するために最初{を削除する必要があるとして、あなたのJSONが実際に有効ではありません。

関連する問題