Klonování polí pomocí JavaScriptu

Věřte tomu nebo ne, existují důvody, proč používáme frameworky JavaScript mimo animace a ty sexy harmoniky, bez kterých se lidé neobejdou. Čím dále se dostanete do vysoce výkonných aplikací JavaScript (za předpokladu, že vytváříte skutečné webové aplikace , nikoli webové stránky ), tím více je potřeba základních funkcí JavaScriptu; tj. JavaScriptové nástroje, které nemají nic společného s DOM. Jedním z těchto základních nástrojů je schopnost klonovat pole. Docela často vidím vývojáře, jak iterují položky pole, aby vytvořili svůj klon; ve skutečnosti může být klonování pole stejně snadné jako slice !

JavaScript

Chcete-li naklonovat obsah daného pole, stačí zavolat slice , poskytující 0 jako první argument:

var clone = myArray.slice(0);

Výše uvedený kód vytvoří klon původního pole; mějte na paměti, že pokud ve vašem poli existují objekty, odkazy jsou zachovány; tj. výše uvedený kód neprovádí "hluboké" klonování obsahu pole. Chcete-li přidat clone jako nativní metodu pro pole byste udělali něco takového:

Array.prototype.clone = function() {
	return this.slice(0);
};

A tady to máte! Neopakujte pole a neklonujte je, pokud vše, co potřebujete, je naivní klon!