Nasıl Javascript Nesneleri bir Dizi klon musun
...her nesne de aynı dizi içinde diğer nesnelere başvurular var mı? Ben ilk bu sorun ile geldiği zaman sadece bir şey gibi
var clonedNodesArray = nodesArray.clone()
ki var ve javascript nesneleri klonlama hakkında bilgi almak için aradım. StackOverflow üzerinde question buldum (aynı John Resig tarafından Cevaplanan) ve jQuery ile yapabilirsin dikkat çekti
var clonedNodesArray = jQuery.extend({}, nodesArray);
bir nesneyi klonlamak için. Bu sadece kopya dizideki nesnelerin referansları olsa da bunu denedim. Yani eğer
nodesArray[0].value = "red"
clonedNodesArray[0].value = "green"
nodesArray[0] ve clonedNodesArray[0] her iki değeri olacaktır "". yeşil Sonra da çalıştım
var clonedNodesArray = jQuery.extend(true, {}, nodesArray);
bir Nesne, ama var olan "çok fazla özyinelemeem " ve "yığın taşması kontrolü" de Firebug ve Opera Dragonfly mesajları sırasıyla.
Bunu nasıl yapardın? Bu hatta olmaması gereken bir şey mi? Javascript ile bunu yeniden bir yolu var mı?
CEVAP
Eğer ihtiyacınız olan tüm sığ bir kopya ise, gerçekten kolay bir yoludur:
new_array = old_array.slice(0);
Nasıl javascript bir ilişkisel dizi ne...
Nasıl JavaScript bir dizi boş?...
JavaScript string özellik değeri nesne...
Nasıl JavaScript iki boyutlu bir dizi ...
JavaScript nesneleri bir dizi sıralama...