[英]adding element names to nested object
我有以下變量
var test = [{…},{…},{…}]
我正在嘗試命名每個元素,以便可以通過test.grade,test.name和test.area訪問元素。 我可以想到向每個索引添加名稱的最原始的方法,但是最優雅的方法是什么?
var columns = //
var a= {};
var b= {};
var c= {};
for(var i =0; i< columns.length; i++){
a[columns[i]] = this.geta[i];
b[columns[i]] = this.getb[i];
c[columns[i]] = this.getc[i];
}
var test = [];
var Name0 = "name";
var Name1 = "grade";
var Name2 = "area";
test.push(a,b,c);
//test = [{name: Mike, grade: 10}}, {name: Sarah, grade:25}},{name:chris, grade:0}}]
這就是我要格式化的方式
[{A:{name:邁克,等級:10}},{B:{name:Sarah,等級:25}},{C:{name:chris,等級:0}}]
然后我要訪問元素,例如res.A.name或res.B.grade ...
如果要通過點表示法訪問某些內容,則應將其作為對象,這樣
test.push({
grade:"grade",
person:"person",
area:"area"
});
然后,您可以像這樣訪問測試數組的元素和元素的屬性
test[0].person;
test[0].grade;
test[0].area;
編輯 :作為對象
test={};
test['Name0']={person:"person1",grade:1,area:"..."};
test['Name1']={person:"person2",grade:1,area:"..."};
test['Name2']={person:"person3",grade:1,area:"..."};
和訪問為
test.Name0.person
或您想使用的任何名稱是字符串,請使用for / foreach
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.