我有问题, 我有像" [prop1] [prop2] [prop3] = 5" ..我需要将此字符串转换为JS对象,因此创建的对象willl如下所示:
{
prop1: {
prop2: {
prop3: 5
}
}
}
有任何帮助吗?感谢
答案 0 :(得分:1)
您的示例未提及数据的所有细节(多少级别,数据类型等),所以......
var str = '[prop1][prop2][prop3] = 5'
.replace(/\[/g, '{"')
.replace(/\]/g, '":')
.replace('=', '');
console.log(JSON.parse(str + '}}}'));
任意级别的Mod
var str = '[prop1][prop2][prop3] = 5';
var opens = str.match(/\[/g).length,
str = str.replace(/\[/g, '{"')
.replace(/\]/g, '":')
.replace('=', '');
console.log(JSON.parse(str + (new Array(opens + 1).join('}'))));