js动态创建json的问题
json={"content":{"id":1,"name":i,"type":1}{"id":2,"name":j,"type":2}{"id":3,"name":v,...
json={"content":{"id":1,"name":i,"type":1}
{"id":2,"name":j,"type":2}
{ "id":3,"name":v,"type":0}
......(不一定有几个 内容不定(从前台获取) 动态的)
"text":{"progress":4,"age":9}
{"progress":4,"age":9}
....(也是动态的 ) }
有没有先定义 var json={};
然后在向json里添加上面的内容的方法呀 我搜了好久都没找到
json={"content":[{"id":1,"name":i,"type":1}
{"id":2,"name":j,"type":2}
{ "id":3,"name":v,"type":0}
......(不一定有几个 内容不定(从前台获取) 动态的)
]
"text":[{"progress":4,"age":9}
{"progress":4,"age":9}
....(也是动态的 ) ] } 展开
{"id":2,"name":j,"type":2}
{ "id":3,"name":v,"type":0}
......(不一定有几个 内容不定(从前台获取) 动态的)
"text":{"progress":4,"age":9}
{"progress":4,"age":9}
....(也是动态的 ) }
有没有先定义 var json={};
然后在向json里添加上面的内容的方法呀 我搜了好久都没找到
json={"content":[{"id":1,"name":i,"type":1}
{"id":2,"name":j,"type":2}
{ "id":3,"name":v,"type":0}
......(不一定有几个 内容不定(从前台获取) 动态的)
]
"text":[{"progress":4,"age":9}
{"progress":4,"age":9}
....(也是动态的 ) ] } 展开
3个回答
展开全部
你是问题有2种含义:
1,你是需要js动态创建json对象(即通常的对象):
var json={};
var lst=[];
var obj1={};
obj1['id']=1;
obj1['name']='name';
obj1['type']='type';
lst.push(obj1);
json['content']=lst;
2就是你需要json字符串(json对象转成字符串):
//引用json.js
var js=JSON.stringify(json);
追问
可惜没有分了 我想问一下 json['content']=lst; 这里的json是对象吗 怎么访问json里的东西
追答
json['属性名(如content)']//根据属性获取对应的value值
或者
json.属性名(如content)
展开全部
动态创建json我看的很迷惑,你不就是希望有一个json,能随便添加内容么?
var json = {
content:{
id:1
}
}
json.text = {
id:2
}
//JSON.stringify 将json转换为字符串
//json.parse 将字符串转换为json 这俩方法你肯定会用的到。如果你要兼容IE6和7 ,自行下载json.js来兼容
var str = JSON.stringify(json);
console.log(typeof str +"--->"+str); //string--->{"content":{"id":1},"text":{"id":2}} //转字符串
console.log(json) //直接返回对象 json.content.id 获取id属性
var json = {
content:{
id:1
}
}
json.text = {
id:2
}
//JSON.stringify 将json转换为字符串
//json.parse 将字符串转换为json 这俩方法你肯定会用的到。如果你要兼容IE6和7 ,自行下载json.js来兼容
var str = JSON.stringify(json);
console.log(typeof str +"--->"+str); //string--->{"content":{"id":1},"text":{"id":2}} //转字符串
console.log(json) //直接返回对象 json.content.id 获取id属性
追问
你这个我没太看懂 json.text = {id:2} 这个里的text之前不用定义吗 这样赋值之后text里还能继续加元素了吗 我的意思是text类似一个数组 它里面还要加好多{id:1}这种东西
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
<script>
var str = "[{ y: 55.11, color : colors[0] },{ y: 21.63, color: colors[1] },{ y: 11.94,color: colors[2] },{ y: 117.15, color: colors[3] }]";
var json = eval("(" + str + ")");
</script>
追问
这样写 str里的元素个数还是固定的呀 我想要的是里面个数不固定的
追答
<script>
var str1,str2;
str1='[{"id":1,"name":i,"type":1},
{"id":2,"name":j,"type":2},
{ "id":3,"name":v,"type":0}]';
str2 = '[{"progress":4,"age":9},{"progress":4,"age":9}]';
var json={};
json.content = eval("(" + str1+ ")");
json.text = eval("(" + str2+ ")");
</script>
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询