我在javascript中使用JSON.Stringify()...
var jsonProp;
var json = { };
json.prop= { };
json.prop.Brand = $('.Brand' + val).val();
json.prop.Name = $('.Name' + val).val();
json.prop.Desc = $('.Desc' + val).val();
json.prop.Address = $('.Address' + val).val();
json.prop.Phone = $('.Phone' + val).val();
json.prop.Tag = $('.Tag' + val).val();
json.prop.City = $('.City' + val).val();
json.prop.Status = $('.Status' + val).val();
jsonProp = jsonProp + JSON.stringify(json);
结果是:
"undefined{"prop":{"Brand":"","Name":"apotik AA","Desc":"","Address":"Address","Phone":"","Tag":"","City":"BEKASI","Status":"0"}}
{"prop":{"Brand":"","Name":"apotik AAaaaa. Bina Farma","Desc":"","Address":"Jl. RA. Kartini, Margahayu-Bekasi Tim., Kota Bks, Jawa Barat 17113","Phone":"","Tag":"","City":"BEKASI","Status":"0"}}"
为什么“未定义”?我怎么设置它?我想要的就是像这样的JSONArray:
Prop{{"Brand":"value","Name":"value"},{"Brand":"value","Name":"value"}}
请帮忙
答案 0 :(得分:2)
因为您声明了jsonProp
但未对其进行定义:var jsonProp;
。如果您没有为变量设置值,则该值为undefined
。
答案 1 :(得分:1)
声明没有任何未分配值的变量时:
var jsonProp; // default value set to undefined by javascript.
没有任何作业。 javascript的作用是,它为undefined
分配一个默认值。这就是它的工作原理。所以,当你连接它时:
jsonProp = jsonProp + JSON.stringify(json);
// undefined + "{prop:{}}"
这种情况发生了。
答案 2 :(得分:0)
您的变量jsonBiz
尚未定义。
所以当你这样做时
jsonBiz = jsonBiz + JSON.stringify(json)
添加未定义的值和字符串。第一个值变为字符串“undefined”,并添加了两个。
答案 3 :(得分:0)
您需要在使用之前定义jsonBiz。
var jsonBiz = "";
jsonBiz = jsonBiz + JSON.stringify(json);
请试试这个。