我正在尝试创建一些对象,它们的名称是具有 class="characteristic"
的 div 的 id 属性。我如何获取名称的 ID?
window.onload = function() {
var characteristicElements = document.getElementsByClassName("characteristic");
for ( var i = 0 ; i < characteristicElements.length ; i++ ) {
var characteristicElements[i].getAttribute("id") = { set: false, val: 0, unn: 0 };
}
};
最佳答案
然后您应该创建一个 map ,使用一个对象,并将 ID 作为属性名称:
var objects = {};
var characteristicElements = document.getElementsByClassName("characteristic");
for ( var i = 0 ; i < characteristicElements.length ; i++ ) {
objects[characteristicElements[i].id] = {'set': false, val: 0, unn: 0 };
}
Afaik 你必须将 set
放在引号中,因为它是对象字面量中的关键字。我可能是错的。另请注意,getElementsByClassName
在 IE8 及之前的版本中不可用。
我推荐阅读 MDN JavaScript Guide - Working with Objects .
关于javascript - 使用来自元素 id 属性的名称创建对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7943991/