我把一個JSon對象與添加另一個值的JSON對象,但是當我打印它給出[對象對象]。不以json格式給出值。代碼如下。在json對象內部的json處理不當
var Json1 = {"name":"OMAR"};
var data=null;
var json2 = {"ID":12345 ,data:Json1 };
我很困惑,我做錯了。任何幫助將不勝感激。
我把一個JSon對象與添加另一個值的JSON對象,但是當我打印它給出[對象對象]。不以json格式給出值。代碼如下。在json對象內部的json處理不當
var Json1 = {"name":"OMAR"};
var data=null;
var json2 = {"ID":12345 ,data:Json1 };
我很困惑,我做錯了。任何幫助將不勝感激。
有一些錯誤代碼:
1.You不需要定義一個變量來增加另一個對象中的對象。
var data = null; // you need not to define it
var json2 = {
"ID": 12345,
data = json1
};
2.Replace
var json2 = {
"ID": 12345,
data = json1
}; // wrong
與
var json2 = {
"ID": 12345,
"data": Json1
}; // right
正確的代碼:
var Json1 = {
"name": "OMAR"
};
var json2 = {
"ID": 12345,
"data": Json1
};
以提醒其值:
試試這個:JSON.stringify(json2);
你的第三個系列目前有語法錯誤,因爲:
預計在=
是,也JavaScript是大小寫敏感的,所以你需要一個大寫的J Json1
相匹配,對第一行的變量(或更改變量小寫的j)的:
var json2 = {"ID":12345, data : Json1 };
如果你這樣做,你會發現,json2.data.name
返回"OMAR"
。
此外,data
變量和data
作爲第二個對象的屬性不是一回事。
此外,術語nitpick:there's no such thing as a JSON object。
有關使用JavaScript對象的更多詳細信息,MDN的文章標題爲"Working with objects"。
兩個錯字在你的代碼:
var Json1 = {"name":"OMAR"};
var data=null;
var json2 = {"ID":12345 ,data:Json1 };
// ^= should be :
// ^json1 should be Json1
現在,如果你需要從json2.data
值,檢索這樣的:
console.log(json2.data.name); //=> "OMAR"
此外,你的代碼可以改寫爲:
var json2 = { "ID":12345 ,data:{"name":"OMAR"} };
請粘貼您在其中打印的帖子噸。 – Reflic
抱歉它寫錯了,它的var json2 {「ID」:12345,data:Json1};但是我在打印json2時得到了[object Object] – Omar