Exactement cloner un objet en javascript

J'ai essayé exactement cloner un objet en javascript. Je sais que la solution suivante à l'aide de jquery:

var newObject = jQuery.extend({}, oldObject);
//Or
var newObject = jQuery.extend(true, {}, oldObject);

mais le problème c'est que les objets de type se perd:

var MyClass = function(param1, param2) {
    alert(param1.a + param2.a);
};
var myObj = new MyClass({a: 1},{a: 2});
var myObjClone = jQuery.extend(true, {}, myObj);
alert(myObj instanceof MyClass);      //=> true
alert(myObjClone instanceof MyClass); //=> false

Est-il une solution pour obtenir un vrai sur la deuxième alerte?

  • David, la différence de tous les autres clone questions, c'est que j'ai demandé comment faire pour conserver les objets de type propriété.
InformationsquelleAutor Tom | 2010-02-14