SORU
23 EYLÜL 2008, Salı


Bir nesneyi klonlamak için en etkili yolu nedir?

JavaScript bir nesne klonlama için en etkili yolu nedir? obj = eval(uneval(o)); kullanıldığını gördüm, ama şu anda Firefox sadece. 1, 2, obj = JSON.decode(JSON.encode(o)); gibi şeyler yaptım ama Mootools verimliliğini soru.

Ayrıca çeşitli kusurları ile özyinelemeli kopyalama işlevleri gördüm. Hayır kurallı çözümü var şaşırdım.

CEVAP
23 EYLÜL 2008, Salı


Not:Bu başka bir cevap, bu soru için uygun bir yanıt değil cevap. Eğer hızlı nesne klonlama istiyorsanız lütfen bu soruya Corban's advice in their answer takip.


.clone() yöntemi dikkat etmek istiyorumbir WordPress kullanmakelemanları DOM klonlar sadece. JavaScript nesneleri klonlamak için.

// Shallow copy
var newObject = jQuery.extend({}, oldObject);

// Deep copy
var newObject = jQuery.extend(true, {}, oldObject);

Daha fazla bilgi jQuery documentation bulunabilir.

Ben de derin bir kopyasını aslında yukarıda gösterilen Birçok tuzaklar önlemek mümkün değil daha zeki ... (derin bir DOM öğesi, örneğin genişletmeye çalışıyor) dikkat etmek istiyorum. Sık sık büyük etkisi eklentileri jQuery çekirdek ve kullanılır.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Elly Awesome

    Elly Awesome

    15 ŞUBAT 2010
  • KRQE

    KRQE

    6 AĞUSTOS 2007
  • optionalinfo

    optionalinfo

    29 EKİM 2005