var a = {
a: '1',
b: '2',
c: {
q: {
r: '3'
},
w: {
r: '4'
}
}
}
如这个对象a,假设我要得到一个数组b
b = [
{
a: '1',
b: '2',
c: {
d: {
r: '3'
}
}
},
{
a: '1',
b: '2',
c: {
d: {
r: '4'
}
}
}
]
除了遍历后赋值给一个中间变量,然后再加到数组b里面,有没有其他办法呢
JSON.parse()和JSON.stringify()
先数组转字符串,再字符串转数组
<script>
var a = {
a: '1',
b: '2',
c: {
q: {
r: '3'
},
w: {
r: '4'
}
}
}
var str = JSON.stringify(a);
var b=[];
for(var i=0;i<3;i++){
var obj = JSON.parse(str);
b.push(obj);
}
b[0]["a"]="r5";//修改其中一个,其他不会变
alert(JSON.stringify(b));
</script>