Si j'ai un objet javascript/assoc. tableau défini comme ceci:Comment puis-je fusionner 2 objets javascript, en remplissant les propriétés dans un si elles n'existent pas dans l'autre?
function somefunction(options) {
var defaults = {
prop1: 'foo',
prop2: 'bar'
};
//Do stuff here
}
et je veux utiliser cela comme valeurs par défaut pour la fonction. Donc, lorsque la fonction est appelée, je veux remplir la variable options
avec les valeurs dans defaults
, mais seulement si elles n'existent pas dans options
.
permet donc dire que cela a été appelé
somefunction({ prop1: 'fish' });
Comment puis-je faire en sorte que options
obtient fusionné avec defaults
telle que je reçois ce
{
prop1: 'fish',
prop2: 'bar'
}
Semble énormément de travail à faire un peu de magie de copie en profondeur - est-il vraiment nécessaire ? – TML
C'est une bonne question, la copie en profondeur pourrait être trop lourde. – cgp
Ce n'est pas le code que vous devez écrire, c'est à quoi ressemble la fonction extend, tout ce que j'avais à faire était options = $ .extend (defaults, options) –