使用作为参数传递的对象创建新对象的构造方法

时间:2014-12-15 10:09:41

标签: javascript oop

我正在尝试构建一个接受对象并将其设置为自身的构造函数。

例如:

var Somecontructor = function(object){
    this = object;
}

显然,我无法将任何内容分配给"这个"因为它是不可改变的,但我试图找到一种方法来做到这一点。有任何想法吗?

编辑:我不知道为什么这个问题值得投反对票。我想做的就是构造一个对象,使用作为参数传递的任何东西来创建特性。当然,我可以这样做,我想找到最有效的方法。如果你的答案不起作用,请不要通过否定投票来成为一个可怕的人。

2 个答案:

答案 0 :(得分:1)

您似乎想要克隆一个对象。为此,您不需要使用构造函数。

var cloneObj = function(obj){
   return JSON.parse(JSON.stringify(obj));
}
console.log(cloneObj({
   property1: "One",
   property2: "Two",
}));

答案 1 :(得分:1)

这会将一个对象的所有属性复制到新对象的属性中。

var SomeConstructor = function(obj) {
    for(key in obj) {
        this[key] = obj[key];
    }
}