Skip to main content

get the true type prototype vs constructor?



I wanted to see the real type of [] .





I always thought that i can use the apply method or the constructor .





so i tried :





[].constructor ->(showed me) function Array() { [native code] }





and





[].constructor.constructor ->(showed me) function Function() { [native code] }





and





Object.prototype.toString.apply([]) ->(showed me) "[object Array]"








questions





1) Whom to believe ?





2)why line 2 is different ?


Comments

  1. 1) Whom to believe ?


    All of them. They're all correct


    2) why line 2 is different ?


    Because [].constructor is a function, and the .constructor of a function is the Function constructor.

    The last line is giving you the internal [[Class]] property of the object. It is only accessible by setting the object as the context of the generic toString() method, which is only available on Object.prototype.

    ReplyDelete

Post a Comment

Popular posts from this blog

Slow Android emulator

I have a 2.67 GHz Celeron processor, 1.21 GB of RAM on a x86 Windows XP Professional machine. My understanding is that the Android emulator should start fairly quickly on such a machine, but for me it does not. I have followed all instructions in setting up the IDE, SDKs, JDKs and such and have had some success in staring the emulator quickly but is very particulary. How can I, if possible, fix this problem?