title: Preserve order of keys when merging two objects in Javascript lodash
body: <p>I have two objects x and y</p>
  
  <pre><code>var x = { 1: 1, 2: 2, hi: "hi" };
  var y = { hello: "hello", coffee: "coffee" };
  </code></pre>
  
  <p>I want to merge them into one.</p>
  
  <pre><code>_.extend(y, x);
  </code></pre>
  
  <p>I am expecting all the keys in y to come first followed by keys in x. However, this is what I am getting in the result</p>
  
  <pre><code>{1: 1, 2: 2, hello: "hello", coffee: "coffee", hi: "hi"}
  </code></pre>
  
  <p>The numeric keys are appearing first, followed by keys in y and x. </p>
  
  <p>How do we get all keys in y to be first followed by keys in x?</p>