Travis build: 2065

This commit is contained in:
30secondsofcode
2018-05-15 18:53:35 +00:00
parent fbd68ec863
commit c51ec370c3
2 changed files with 2 additions and 2 deletions

View File

@ -6123,7 +6123,7 @@ const deepClone = obj => {
Object.keys(clone).forEach(
key => (clone[key] = typeof obj[key] === 'object' ? deepClone(obj[key]) : obj[key])
);
return Array.isArray(obj) ? Array.from(clone) : clone;
return Array.isArray(obj) ? (clone.length = obj.length) && Array.from(clone) : clone;
};
```

View File

@ -101,7 +101,7 @@
Object<span class="token punctuation">.</span><span class="token function">keys</span><span class="token punctuation">(</span>clone<span class="token punctuation">).</span><span class="token function">forEach</span><span class="token punctuation">(</span>
key <span class="token operator">=></span> <span class="token punctuation">(</span>clone<span class="token punctuation">[</span>key<span class="token punctuation">]</span> <span class="token operator">=</span> <span class="token keyword">typeof</span> obj<span class="token punctuation">[</span>key<span class="token punctuation">]</span> <span class="token operator">===</span> <span class="token string">'object'</span> <span class="token operator">?</span> <span class="token function">deepClone</span><span class="token punctuation">(</span>obj<span class="token punctuation">[</span>key<span class="token punctuation">]) :</span> obj<span class="token punctuation">[</span>key<span class="token punctuation">])
);</span>
<span class="token keyword">return</span> Array<span class="token punctuation">.</span><span class="token function">isArray</span><span class="token punctuation">(</span>obj<span class="token punctuation">)</span> <span class="token operator">?</span> Array<span class="token punctuation">.</span><span class="token keyword">from</span><span class="token punctuation">(</span>clone<span class="token punctuation">) :</span> clone<span class="token punctuation">;
<span class="token keyword">return</span> Array<span class="token punctuation">.</span><span class="token function">isArray</span><span class="token punctuation">(</span>obj<span class="token punctuation">)</span> <span class="token operator">?</span> <span class="token punctuation">(</span>clone<span class="token punctuation">.</span>length <span class="token operator">=</span> obj<span class="token punctuation">.</span>length<span class="token punctuation">)</span> <span class="token operator">&amp;&amp;</span> Array<span class="token punctuation">.</span><span class="token keyword">from</span><span class="token punctuation">(</span>clone<span class="token punctuation">) :</span> clone<span class="token punctuation">;
};</span>
</pre><label class="collapse">Show examples</label><pre class="language-js"><span class="token keyword">const</span> a <span class="token operator">=</span> <span class="token punctuation">{</span> foo<span class="token punctuation">:</span> <span class="token string">'bar'</span><span class="token punctuation">,</span> obj<span class="token punctuation">: {</span> a<span class="token punctuation">:</span> <span class="token number">1</span><span class="token punctuation">,</span> b<span class="token punctuation">:</span> <span class="token number">2</span> <span class="token punctuation">} };</span>
<span class="token keyword">const</span> b <span class="token operator">=</span> <span class="token function">deepClone</span><span class="token punctuation">(</span>a<span class="token punctuation">);</span> <span class="token comment">// a !== b, a.obj !== b.obj</span>