操作很简单,我需要一个javaScript中的内部对象。
我有字符串对象集合:
a[0] = {
name:
"A[0].B[0].C[0].Property1"
value: "1"
}
a[1] = {
name: "A[0].B[0].C[0].Property2"
value: "1" }
a[2] = {
name: "A[0].B[0].C[1].Property1"
value: "2"}
依此类推,大约有 100 个。
我想要一个对象A
,其中包含B
的数组和Cs
的Arrays
以及每个 c
及其属性。
如何将这个 A[i].B[j].C[k].Property
字符串集合放入一个 javaScript 对象中。
有没有类似下面的方法?
var myObject = JSON.getObject(a);
console(myObject.A[0].B[0].C[0].Property1); //output the Property1
最佳答案
如果我理解这里的问题是示例代码
var a = [];
a[0] = {
name:
"A[0].B[0].C[0].Property1",
value: "1"
}
a[1] = {
name: "A[0].B[0].C[0].Property2",
value: "1"
}
a[2] = {
name: "A[0].B[0].C[1].Property1",
value: "2"
}
function createObject(arr) {
var _a = [];
for (var i in arr) {
var reg = /A\[(\d+)\]\.B\[(\d+)\]\.C\[(\d+)\]\.(\w+)/g;
var it = reg.exec(arr[i].name);
if (it) {
var b = _a[it[1]];
if (!b)
b = _a[it[1]] = [];
var c = b[it[2]];
if (!c)
c = b[it[2]] = [];
var p = c[it[3]];
if (!p)
p = c[it[3]] = {};
p[it[4]] = it[4];
}
}
return _a;
}
console.log(createObject(a));
关于javascript - 将 View Web 表单 View 引擎格式中的字符串数组转换为 javaScript 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30599635/