问题
I have the following object literal:
var a = {a:1,b:2}
now I want another instance of the same object. If I'm using a constructor, I can do this using the 'new' operator, ie:
b = new a();
How to create a new instance of an object using object literals?
回答1:
The simplest way would be with Object.create
var b = Object.create(a);
console.log(b.a); //1
console.log(b.b); //2
DEMO
And of course if you need to support older browsers, you can get the MDN shim for Object.create
here
来源:https://stackoverflow.com/questions/9205136/creating-new-objects-using-object-literals