2012-07-30 65 views
0

我有一个这样的对象:变换对象JSON

{ 
    user[id]: 1, 
    user[name]: 'Lorem', 
    money: '15.00' 
} 

而且我想这样的:

{ 
    user: { 
    id: 1, 
    name: 'Lorem', 
    }, 
    money: '15.00' 
} 

我怎样才能做到这一点?

+0

是第一个JSON?你可以做一个http://jsfiddle.net演示你的*问题*? – 2012-07-30 01:47:19

+0

我想要在JSON中直接转换输入值和按键... http://jsfiddle.net/MFWLH/1/ 反之亦然。有时我有json并想要在输入中设置.. – 2012-07-30 02:03:10

回答

2

像这样的事情

var x = { 
    "user[id]": 1, 
    "user[name]": 'Lorem', 
    "money": '15.00' 
} 
var y = {}; 
for (var i in x){ 
    var z = /(.+)\[(.+)\]/g.exec(i); 
    if (z){ 
     if (!y.hasOwnProperty(z[1])){ 
      y[z[1]] = {}; 
     } 
     y[z[1]][z[2]] = x[i]; 
    } 
    else{ 
     y[i] = x[i]; 
    } 
} 

http://jsfiddle.net/mowglisanu/3Z2qe/