SORU
28 ŞUBAT 2009, CUMARTESİ


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
9 Kasım 2010, Salı


Eğer ihtiyacınız olan tüm sığ bir kopya ise, gerçekten kolay bir yoludur:

new_array = old_array.slice(0);

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Bad Lip Reading

    Bad Lip Read

    22 Mart 2011
  • ICON

    ICON

    19 EKİM 2011
  • Vortez

    Vortez

    27 Temmuz 2009