Selon le trait de soulignement la documentation,
L'api de _.étendre la méthode est
_.extend(destination,*sources)
Premier Échantillon
_.extend(parent, child);
Dans cet exemple de code, vous êtes en fait d'étendre les propriétés de l'objet enfant à l'objet parent. Ici, le parent de l'objet est modifiée.
Deuxième Échantillon
_.extend({}, parent, child);
Dans le cas où vous ne souhaitez pas modifier l'objet parent et vous souhaitez à la fois les propriétés du parent et de l'enfant. Vous pouvez utiliser ce un. Ici, vous êtes à l'extension de l'objet parent et de l'enfant l'objet d'un nouvel objet.
Donc, si j'utilise la première méthode plusieurs fois avec des enfants, je vais avoir un parent d'avoir toutes les fonctionnalités de ces enfants différents. Droit? Même chose avec la deuxième approche me donne l'ensemble des objets différents. vous n'avez pas à appeler plusieurs fois, vous pouvez avoir n d'arguments. U peut faire quelque chose comme _.étendre(parent,enfant1 enfant2,chilld3,child4);. Donc, parent aura toutes les propriétés de l'enfant1,2,3 et 4
Trait de soulignement étendre la méthode remplace le premier argument passé à elle. Mais la plupart du temps, vous ne voulez pas que. Vous voulez juste un autre objet dont le second est étendu avec la méthode de la première.
De sorte que vous passer un objet vide que l'objet conteneur pour le résultat.
Selon le trait de soulignement la documentation,
L'api de _.étendre la méthode est
Premier Échantillon
Dans cet exemple de code, vous êtes en fait d'étendre les propriétés de l'objet enfant à l'objet parent. Ici, le parent de l'objet est modifiée.
Deuxième Échantillon
Dans le cas où vous ne souhaitez pas modifier l'objet parent et vous souhaitez à la fois les propriétés du parent et de l'enfant. Vous pouvez utiliser ce un. Ici, vous êtes à l'extension de l'objet parent et de l'enfant l'objet d'un nouvel objet.
vous n'avez pas à appeler plusieurs fois, vous pouvez avoir n d'arguments. U peut faire quelque chose comme _.étendre(parent,enfant1 enfant2,chilld3,child4);. Donc, parent aura toutes les propriétés de l'enfant1,2,3 et 4
OriginalL'auteur syed imty
Prenez cet exemple:
Maintenant,
myConfig
est touchée. J'ai remplacé la valeur d'origine demyConfig.name
, et je ne peux jamais le récupérer.Afin de préserver
myConfig
etyourConfig
, j'ai besoin de combiner les deux dans un 3e objet:OriginalL'auteur meagar
Trait de soulignement étendre la méthode remplace le premier argument passé à elle. Mais la plupart du temps, vous ne voulez pas que. Vous voulez juste un autre objet dont le second est étendu avec la méthode de la première.
De sorte que vous passer un objet vide que l'objet conteneur pour le résultat.
var grandChild = _.extend({}, parent, child);
OriginalL'auteur Mukesh Soni