学习js以来的问题小集锦

时间:2022-06-10 14:58:04

1.JavaScript是不是一门面向对象的语言?

javascript并不是纯粹的面向对象的语言,因为它不支持某些特征,其中一个重要的特征是继承----通过扩展现有类的定义来定义新类的方法。

js只能模拟继承方式,可以使用jquery的方法实现继承;

ps:面向对象最重要的两个就是 类 与 继承

 

2.js的原型可以实现多态吗?

什么是多态?

同一操作作用于不同的对象,可以有不同的解释,产生不同的执行结果,这就是多态性。简单的说:就是用基类的引用指向子类的对象。

  1. 应用程序不必为每一个派生类编写功能调用,只需要对抽象基类进行处理即可。大大提高程序的可复用性。//继承 
  2. 派生类的功能可以被基类的方法或引用变量所调用,这叫向后兼容,可以提高可扩充性可维护性。 //多态的真正作用

 

 

3.闭包

闭包只能在某些地方提升代码的效率。

模拟面向对象的代码风格;更优雅,更简洁的表达出代码;在某些方面提升代码的执行效率。

 1 匿名自执行函数     2缓存     3 实现封装     4 闭包的另一个重要用途是实现面向对象中的对象,传统的对象语言都提供类的模板机制。