Bug Tracker

Ticket #10158 (closed feature: worksforme)

Opened 3 years ago

Last modified 3 years ago

Extend only existing properties

Reported by: anonymous Owned by:
Priority: low Milestone: None
Component: core Version: 1.6.2
Keywords: Cc:
Blocking: Blocked by:

Description

var object1 = {
  apple: 0,
  banana: {weight: 52, price: 100},
  cherry: 97
};
var object2 = {
  banana: {price: 200},
  durian: 100
};

/* merge object2 into object1 */
$.extend(object1, object2, true);

// Output (no durian!):
// { apple: 0, banana: { price: 200 }, cherry: 97 }

Change History

comment:1 Changed 3 years ago by rwaldron

  • Priority changed from undecided to low
  • Resolution set to worksforme
  • Status changed from new to closed
  • Component changed from unfiled to core

Works for me:  http://gyazo.com/c87038f3f474289a7947f7410a622975.png

 http://jsfiddle.net/rwaldron/RSRRq/

If you're trying to tell us that you don't want the durian property, then you've misunderstood the semantics of extend

Note: See TracTickets for help on using tickets.