请进,javscript构造器的问题?书上说Array内置对象,内置对象应该本来就存在,而不需要构造的啊?那这个内置对象指的是Array()构造器不成?Array内置对象不是数组对象不成?内置对象就是指构筑器Array()不成??????不加(),Array是构造器.加上(),Array也是构造器,加不加都是内置对象,注意:都不是数组对象!应该是(内置对象或叫内置构造器)数组对象应该是返回出来或者引用后的对象实例!Array()和Array返回的object对象是数组对象,Array不是数组对象,是构造器,只有Array()构造器返回出来的或者是引用后的对象实例才是数组对象?对不?在javascript中什么都是对象,呵呵,连构造器Array都是对象,我居然把构造器Array对象看成了是数组对象了,呵呵.....我以前只搞asp的,用的是vbscript,呵,javascript什么都是对象,分不清楚,比较容易混谣.javscript很鸟啊 Array(),String(),Number(),Object()返回出来的都是小写的object对象,那么都是小写的对象混在一起,怎么辩明是哪个对象呢?Object()返回出来的对象是(空对象还是对象)什么叫做空对象俺不懂,请教俺一下.书上没说.Array(),String(),Number()构造器返回出来的对象,都素Object()构造器返回对象的子对象,为啥这么说,所有对象都继承Object()返回出来的对象,这句话怎么说,请解释.这个Function()构造器也就是内置对象,是(所有构造器也就是内置对象)的主构造器,那么Function()主构造器也是Function()构筑器的主构造器吗?自己能构造自己不成?最后再来一个问题,呵呵~~~~
function a(){};
document.write (a.constructor)这个a的构造器是由function Function(){}构筑的document.write (Array().constructor)这个Array()的构造器是由function Function(){}构造的.那么我把a.constructor写成a().constructor为什么就不行,而(Array().constructor)都可以这样写?
再来一个问题:function k(){
window.alert(this==window);<----这里的this指的是调用alert函数的window对象!
}function k(){
this.a=123;<------那么这里的this没有函数调用的对象,指的是啥子?俺不知道,请大哥大姐教一下.
}

解决方案 »

  1.   

    function k(){ 
    this.a=123; <------那么这里的this没有函数调用的对象,指的是啥子?俺不知道,请大哥大姐教一下. 
    }
    function k 这种写法本身就是创建对象的一种方式。
    js语法机制实在是太灵活勒var test = new k();
    alert(k.a);
      

  2.   

    楼主不要看书太死板了。
    内置对象只是说明不用你去实现细节问题,但是初始化总是需要的吧!
    var a=new Array();
    你把它理解为初始化不就得了。
    对象一定有构造器吗?
    楼主是拿其它语言的语法来验证JavaScript,这可能正确吗?