有些人说是基于对象的语言,没有继承
但有些书说它是面向对象的语言,有原型式继承

解决方案 »

  1.   

    JavaScript是基于面向对象。
    JS里面的继承是模拟来实现的,那个继承,你可以理解为复制父类的方法和属性。
    这个你自己可以试试,你先写一个类,然后用原型继承或者别的方式都可以,然后,在修改一个父类的方法,你在调用子类继承自父类的那个方法,这个时候,两个方法的执行结果是否一样。
      

  2.   

    应该是基于对象的,而java才是真正面向对象的。
      

  3.   

    js不是原生支持继承,而是通过prototype去模拟的,所以是基于对象,不是面向对象
      

  4.   

    javascript 没有"类"的概念.要放下对象和类,达到"对象本无根,类型亦无形"的境界确实是件不容易的事情啊。所以,javascript中没有"类",类已化为无形,与对象融为一体。正是由于放下了"类"这个概念,javascript的对象才有了其他编程语言没有的活力。
    javascript的所有function类型的对象都要有一个prototype属性。这个prototype属性本身又是一个object类型对象,因此我们可以给这个prototype对象添加任意的属性和方法。既然prototype是对象的"原型",那么由该函数构造出来的对象应该都会具有这个"原型"的特征。事实上,在构造函数prototype上定义的所有属性和方法,都是可以通过构造的对象直接访问和调用的。也可以这么说,prototype提供了一群同类对象共享属性和方法的机制。
      

  5.   

    不管是那种,js都比它先进方便,java还是C#都没有js灵活。
      

  6.   

    JavaScript是基于面向对象。
    JS里面的继承是模拟来实现的,那个继承,你可以理解为复制父类的方法和属性。
    这个你自己可以试试,你先写一个类,然后用原型继承或者别的方式都可以,然后,在修改一个父类的方法,你在调用子类继承自父类的那个方法,这个时候,两个方法的执行结果是否一样。heh 
      

  7.   

    推荐一本书给你,也许对你有帮助,《JavaScript王者归来》这本书挺好的。
      

  8.   

    ECMAScript是基于对象(object-based)的编程语言,在宿主环境中执行计算或操作对象。
    ECMAScript没有像C++,Smalltalk,Java等语言中的真正的类,但是它支持构造器(constructors)。
    ECMAScript支持基于原型的继承。参见:ECMAScript深入浅出