Javascript 对象中的动态属性名称

Javascript 对象中的动态属性名称,javascript,arrays,object,dynamic,properties,Javascript,Arrays,Object,Dynamic,Properties,我最初的目的是创建具有动态名称的变量,以避免重复使用var randName=document.createElement(“div”)。 所以,当时,我只是在学习JS对象,我想我可以这样做: var createMe = function(){}, elemsArray = ['a', 'b', 'c', 'd', 'e'], numbersArray = ['1', '2', '3', '4', '5'], togetherArray = elemsArray.concat(numbersA

我最初的目的是创建具有动态名称的变量,以避免重复使用
var randName=document.createElement(“div”)。
所以,当时,我只是在学习JS对象,我想我可以这样做:

var createMe = function(){},
elemsArray = ['a', 'b', 'c', 'd', 'e'],
numbersArray = ['1', '2', '3', '4', '5'],
togetherArray = elemsArray.concat(numbersArray),
i;
for(i = 0; i < togetherArray.length; i++)
{
    createMe.prototype[togetherArray[i]] = document.createElement("div");
    createMe.prototype[togetherArray[i]].setAttribute("id", togetherArray[i]); 
}
var awesomeObject = new createMe;
var createMe=function(){},
ElemArray=['a','b','c','d','e'],
numbersArray=['1','2','3','4','5'],
togetherArray=elemsArray.concat(numbersArray),
我
对于(i=0;i
现在,我可以通过awesomeObject.body引用HTML元素,并对它们进行操作,将它们插入DOM,等等。。。
有了它,我保存了一大堆代码行,它可以工作,并且可以为我想要的工作。然而,我想知道我所做的是不是没有违反任何规则,速度慢,或者是最好的方法。感谢您的帮助。谢谢。

如果您只是想寻求实现目标的更简单方法的建议,我可以提出如下建议:

var createMe = function(ids) {
    elems = {};
    ids.forEach(function(id) {
        elems[id] = '<div id="'+id+'"></div>';
    }
    return elems;
}
var awesomeObject = createMe(['a','b','c','d','e'].concat([1,2,3,4,5]));
var createMe=function(id){
元素={};
forEach(函数(id){
元素[id]='';
}
返回元素;
}
var awesomeObject=createMe(['a','b','c','d','e'])。concat([1,2,3,4,5]);

我发现在创建节点时使用HTML字符串通常更容易,只需使用DOM API更改现有节点。通过向页面添加字符串节点是有效的,如果您希望将此字符串转换为某个步骤的介绍节点,还可以使用帮助函数完成相同。

这没什么错。谢谢你的评论。我想知道这是唯一的方法吗?或者在对象内部使用一个函数,将数组作为输入并添加属性?动态创建属性的方法有很多种。哪一种是“更好”还是“更差”取决于你试图解决的问题。好吧,谢谢。我想这个问题是没有意义的……我应该把它留着吗?