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

  • GUN-TIME with Brandon

    GUN-TIME wit

    3 ŞUBAT 2009
  • joshsnice

    joshsnice

    28 Kasım 2006
  • UKF

    UKF

    2 Aralık 2009