@@ -75856,17 +75856,31 @@ <h3 id="solution-1">Solution 1</h3>
75856
75856
<span class="normal"> 8</span>
75857
75857
<span class="normal"> 9</span>
75858
75858
<span class="normal">10</span>
75859
- <span class="normal">11</span></pre></div></td><td class="code"><div><pre><span></span><code><span class="kd">function</span><span class="w"> </span><span class="nx">join</span><span class="p">(</span><span class="nx">arr1</span><span class="o">:</span><span class="w"> </span><span class="kt">any</span><span class="p">[],</span><span class="w"> </span><span class="nx">arr2</span><span class="o">:</span><span class="w"> </span><span class="kt">any</span><span class="p">[])</span><span class="o">:</span><span class="w"> </span><span class="nx">any</span><span class="p">[]</span><span class="w"> </span><span class="p">{</span>
75860
- <span class="w"> </span><span class="kd">const</span><span class="w"> </span><span class="nx">d</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="ow">new</span><span class="w"> </span><span class="nb">Map</span><span class="p">(</span><span class="nx">arr1</span><span class="p">.</span><span class="nx">map</span><span class="p">(</span><span class="nx">x</span><span class="w"> </span><span class="p">=></span><span class="w"> </span><span class="p">[</span><span class="nx">x</span><span class="p">.</span><span class="nx">id</span><span class="p">,</span><span class="w"> </span><span class="nx">x</span><span class="p">]));</span>
75859
+ <span class="normal">11</span>
75860
+ <span class="normal">12</span>
75861
+ <span class="normal">13</span>
75862
+ <span class="normal">14</span>
75863
+ <span class="normal">15</span>
75864
+ <span class="normal">16</span>
75865
+ <span class="normal">17</span>
75866
+ <span class="normal">18</span></pre></div></td><td class="code"><div><pre><span></span><code><span class="kd">function</span><span class="w"> </span><span class="nx">join</span><span class="p">(</span><span class="nx">arr1</span><span class="o">:</span><span class="w"> </span><span class="kt">ArrayType</span><span class="p">[],</span><span class="w"> </span><span class="nx">arr2</span><span class="o">:</span><span class="w"> </span><span class="kt">ArrayType</span><span class="p">[])</span><span class="o">:</span><span class="w"> </span><span class="nx">ArrayType</span><span class="p">[]</span><span class="w"> </span><span class="p">{</span>
75867
+ <span class="w"> </span><span class="kd">const</span><span class="w"> </span><span class="nx">r</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="p">(</span><span class="nx">acc</span><span class="o">:</span><span class="w"> </span><span class="kt">Obj</span><span class="p">,</span><span class="w"> </span><span class="nx">x</span><span class="o">:</span><span class="w"> </span><span class="kt">ArrayType</span><span class="p">)</span><span class="o">:</span><span class="w"> </span><span class="nx">Obj</span><span class="w"> </span><span class="p">=></span><span class="w"> </span><span class="p">((</span><span class="nx">acc</span><span class="p">[</span><span class="nx">x</span><span class="p">.</span><span class="nx">id</span><span class="p">]</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nx">x</span><span class="p">),</span><span class="w"> </span><span class="nx">acc</span><span class="p">);</span>
75868
+ <span class="w"> </span><span class="kd">const</span><span class="w"> </span><span class="nx">d</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nx">arr1</span><span class="p">.</span><span class="nx">reduce</span><span class="p">(</span><span class="nx">r</span><span class="p">,</span><span class="w"> </span><span class="p">{});</span>
75869
+
75861
75870
<span class="w"> </span><span class="nx">arr2</span><span class="p">.</span><span class="nx">forEach</span><span class="p">(</span><span class="nx">x</span><span class="w"> </span><span class="p">=></span><span class="w"> </span><span class="p">{</span>
75862
- <span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="nx">d</span><span class="p">. </span><span class="nx">has</span><span class="p">(</span><span class="nx"> x</span><span class="p">.</span><span class="nx">id</span><span class="p">) )</span><span class="w"> </span><span class="p">{</span>
75863
- <span class="w"> </span><span class="nx">d </span><span class="p">.</span><span class="nx">set </span><span class="p">(</span><span class="nx">x</span><span class="p">.</span><span class="nx">id</span><span class="p">,</span><span class="w"> </span><span class="p">{</span><span class="w"> </span><span class="p">...</span><span class="nx"> d</span><span class="p">. </span><span class="nx">get</span><span class="p">(</span><span class="nx"> x</span><span class="p">.</span><span class="nx">id</span><span class="p">) ,</span><span class="w"> </span><span class="p">...</span><span class=" nx">x</span><span class="w"> </span><span class=" p">} );</span>
75871
+ <span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="nx">d</span><span class="p">[ </span><span class="nx">x</span><span class="p">.</span><span class="nx">id</span><span class="p">] )</span><span class="w"> </span><span class="p">{</span>
75872
+ <span class="w"> </span><span class="nb">Object </span><span class="p">.</span><span class="nx">assign </span><span class="p">(</span><span class="nx">d</span><span class="p">[ </span><span class="nx">x</span><span class="p">.</span><span class="nx">id</span><span class="p">] ,</span><span class="w"> </span><span class="nx">x</span><span class="p">);</span>
75864
75873
<span class="w"> </span><span class="p">}</span><span class="w"> </span><span class="k">else</span><span class="w"> </span><span class="p">{</span>
75865
- <span class="w"> </span><span class="nx">d</span><span class="p">. </span><span class="nx">set </span><span class="p">( </span><span class="nx">x </span><span class="p">. </span><span class="nx">id </span><span class="p">, </span><span class="w"> </span><span class="nx">x</span><span class="p">) ;</span>
75874
+ <span class="w"> </span><span class="nx">d</span><span class="p">[ </span><span class="nx">x </span><span class="p">. </span><span class="nx">id </span><span class="p">] </span><span class="w"> </span><span class="o">= </span><span class="w"> </span><span class="nx">x</span><span class="p">;</span>
75866
75875
<span class="w"> </span><span class="p">}</span>
75867
75876
<span class="w"> </span><span class="p">});</span>
75868
- <span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="p">[... </span><span class="nx">d</span><span class=" p">.</span><span class="nx">values</span><span class="p">()]. </span><span class="nx">sort</span><span class="p">((</span><span class="nx">a</span><span class="p">,</span><span class="w"> </span><span class="nx">b</span><span class="p">)</span><span class="w"> </span><span class="p">=></span><span class="w"> </span><span class="nx">a</span><span class="p">.</span><span class="nx">id</span><span class="w"> </span><span class="o">-</span><span class="w"> </span><span class="nx">b</span><span class="p">.</span><span class="nx">id </span><span class="p">);</span>
75877
+ <span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="nb">Object </span><span class="p">.</span><span class="nx">values</span><span class="p">(</span><span class="nx">d </span><span class="p">);</span>
75869
75878
<span class="p">}</span>
75879
+
75880
+ <span class="kr">type</span><span class="w"> </span><span class="nx">JSONValue</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="kc">null</span><span class="w"> </span><span class="o">|</span><span class="w"> </span><span class="kt">boolean</span><span class="w"> </span><span class="o">|</span><span class="w"> </span><span class="kt">number</span><span class="w"> </span><span class="o">|</span><span class="w"> </span><span class="kt">string</span><span class="w"> </span><span class="o">|</span><span class="w"> </span><span class="nx">JSONValue</span><span class="p">[]</span><span class="w"> </span><span class="o">|</span><span class="w"> </span><span class="p">{</span><span class="w"> </span><span class="p">[</span><span class="nx">key</span><span class="o">:</span><span class="w"> </span><span class="kt">string</span><span class="p">]</span><span class="o">:</span><span class="w"> </span><span class="nx">JSONValue</span><span class="w"> </span><span class="p">};</span>
75881
+ <span class="kr">type</span><span class="w"> </span><span class="nx">ArrayType</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="p">{</span><span class="w"> </span><span class="nx">id</span><span class="o">:</span><span class="w"> </span><span class="kt">number</span><span class="w"> </span><span class="p">}</span><span class="w"> </span><span class="o">&</span><span class="w"> </span><span class="nx">Record</span><span class="o"><</span><span class="kt">string</span><span class="p">,</span><span class="w"> </span><span class="nx">JSONValue</span><span class="o">></span><span class="p">;</span>
75882
+
75883
+ <span class="kr">type</span><span class="w"> </span><span class="nx">Obj</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nx">Record</span><span class="o"><</span><span class="kt">number</span><span class="p">,</span><span class="w"> </span><span class="nx">ArrayType</span><span class="o">></span><span class="p">;</span>
75870
75884
</code></pre></div></td></tr></table></div>
75871
75885
</div>
75872
75886
</div>
@@ -75902,6 +75916,11 @@ <h3 id="solution-1">Solution 1</h3>
75902
75916
75903
75917
<nav>
75904
75918
75919
+ <a href="https://github.com/rain84" class="md-author" title="@rain84">
75920
+
75921
+ <img src="https://avatars.githubusercontent.com/u/1732547?v=4&size=72" alt="rain84">
75922
+ </a>
75923
+
75905
75924
<a href="https://github.com/yanglbme" class="md-author" title="@yanglbme">
75906
75925
75907
75926
<img src="https://avatars.githubusercontent.com/u/21008209?v=4&size=72" alt="yanglbme">
0 commit comments