SORU
31 Mart 2011, PERŞEMBE


JavaScript "Dizi(n)" yeni; ve "Dizisi.prototip.göster" tuhaflık

Firefox 3.5.7/Firebug-1.5.3 ve Firefox 3.6.16/Firebug-1.6.2 . bu şekilde izliyorum

Ben ateş Kundakçı zaman:

    >>> x = new Array(3)
    [undefined, undefined, undefined]
    >>> y = [undefined, undefined, undefined]
    [undefined, undefined, undefined]

    >>> x.constructor == y.constructor
    true

    >>> x.map(function(){ return 0; })
    [undefined, undefined, undefined]
    >>> y.map(function(){ return 0; })
    [0, 0, 0]

Burada neler oluyor? Bu bir hata değildir, veya new Array(3) kullanmak için nasıl bir yanlış anlama muyum?

CEVAP
31 Mart 2011, PERŞEMBE


İlk örnek gibi görünüyor

x = new Array(3);

Oluşturur tanımlanmamış işaretçiler bir dizi.

Ve ikinci 3 tanımsız nesne işaretçileri ile bir dizi oluşturur, bu durumda göstericiler, kendilerini tanımsız, işaret yalnızca nesneler DEĞİL.

y = [undefined, undefined, undefined]

Harita dizideki nesneler bağlamında çalıştırmak gibi ilk harita ikinci çalıştırmak için yönetir işlevi çalıştırmak için başarısız inanıyorum.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • 3dmmfavs

    3dmmfavs

    29 Kasım 2009
  • Darren Kitchen

    Darren Kitch

    3 EKİM 2011
  • Tinkernut

    Tinkernut

    28 Aralık 2006