2014-06-28 108 views
-2

我試圖將javaScript數組轉換爲JSON。 javaScript數組充滿了細節,但JSON是空的。 這是我做了轉換:從數組轉換爲JSON

var jsonToDB = JSON.stringify(msgToDB); 

我想插入這個數組的MongoDB也正因爲如此,我做了轉換到JSON。

這是陣列看起來如何在調試(轉換前):

images: Array[1] 
0: "vghbjn.jpg" 
messageName: "ghjk" 
millisecToShow: 1000 
screenId: Array[1] 
0: "screen1" 
template: "Template1" 
text: Array[1] 
0: "vhbjnk" 
timeFrame: Array[1] 
0: Object 
date: Object 
end: "June 25, 2014" 
start: "June 25, 2014" 
days: Array[2] 
0: "Sunday" 
1: "Saturday" 
time: Object 
end: Object 
hour: "23" 
minutes: "00" 
seconds: "0" 
start: Object 
hour: "00" 
minutes: "00" 
seconds: "0" 

和JSON爲空:jsonToDB: 「[]」。

+0

這是不可能的回答,如果陣列有內容,你會得到這些內容作爲一個JSON字符串,所以陣列可能是空的,當你把它串起來,我們沒辦法告訴你爲什麼! – adeneo

+0

嘗試'console.log(msgToDB)'然後檢查控制檯中的結果。那裏是空的嗎? – dc5

+0

需要更多信息纔能有任何答覆的希望。 –

回答

0

我用原始數據修改了我的代碼,它也工作正常。不知道你是如何得到這個問題的。

var msgToDB = { 
"messageName": "1", 
"text": [""], 
"images": ["image1.jpg"], 
"template": "template.html", 
"millisecToShow": 100, 
"timeFrame": [{ 
    "date": { 
     "start": "January 1, 2014", 
     "end": "December 31, 2014" 
    }, 
    "days": ["Sunday", "Saturday"], 
    "time": { 
     "start": { 
      "hour": "6", 
      "minutes": "0", 
      "seconds": "0" 
     }, 
     "end": { 
      "hour": "7", 
      "minutes": "0", 
      "seconds": "0" 
     } 
    } 
    }], 
    "screenId": [1] 
    }; 

var jsonToDB = JSON.stringify(msgToDB); 
console.log(jsonToDB); 

這裏是的jsfiddle鏈接: - http://jsfiddle.net/Gk3e5/

+0

該陣列是這樣的: { 「messageName」:「1」, 「text」:[「」], 「images」:[ 「image1.jpg」], 「模板」: 「template.html」, 「millisecToShow」:100, 「時限」: [ { 「日期」:{ 「開始」: 「2014年1月1」 ,「結束」:「2014年12月31日」}, 「天」:[「星期天」,「星期六」], 「時間」:{「hour」:「6」,「minutes 「:」0「,」seconds「:」0「}, 」end「:{」hour「:」7「,」minutes「:」0「,」seconds「:」0「} } } ], 「screenId」:[1] } – user3491963

+0

我修改了我的代碼,它也工作正常。你能檢查你的代碼和我的代碼是否有區別嗎? – Indra