[英]refactoring object methods on javascript
我有一个对象make = {}; 我创建了对象方法(make.a(),make.h1()),其中每个方法都会创建一个标记元素
我创造了什么,我做了的jsfiddle: 这里
我想创建许多这样的标签元素。
有什么办法避免重复
return document.createElement('tagName');
每一次?
您可以将标签名称传递给函数。
var make = {};
make.el = function(elem) {
return document.createElement(elem);
};
var h1 = make.el('h1');
h1.innerHTML = 'Hello World';
document.body.appendChild(h1);
var a = make.el('a');
a.href = 'http://jsfiddle.net';
a.innerHTML = 'JSFiddle';
document.body.appendChild(a);
一种方法是使用eval命令,尽管不建议使用。
var make = {};
var tags = "a,h1,h2,h3,p,div,span"; // and so on
var arr = tags.split(",");
for (var i=0; i<arr.length; i++) {
eval (" make[arr[i]] = function (){return document.createElement('"+arr[i]+"')};");
}
var h1 = make.h1();
h1.innerHTML = 'Hello World';
document.body.appendChild(h1);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.