javascript里的"类"

来源:互联网 发布:淘宝reebonz海外旗舰店 编辑:程序博客网 时间:2024/05/21 10:02

关于定义类或对象,具体内容参考w3school

在es6以前应用最广的:混合的构造函数/原型方式

联合使用构造函数和原型方式,就可像用其他程序设计语言一样创建对象。这种概念非常简单,即用构造函数定义对象的所有非函数属性,用原型方式定义对象的函数属性(方法)。
这种方式是 ECMAScript 采用的主要方式,它具有其他方式的特性,却没有他们的副作用。


有4中方式来调用JavaScript函数:

  • 作为函数
  • 作为方法
  • 作为构造函数
  • 通过他们的call()和apply()方法间接调用

函数调用:

对于普通函数调用,函数的返回值成为调用表达式的值。如果该函数返回是因为解释器到达结尾,返回值就是undefined。如果函数返回是因为解释器执行到一条return语句,返回值就是return之后的表达式的值,如果没有return语句没有值,则返回undefined。

方法调用:

通过对象.方法()的方式来调用。但是方法调用和函数调用有一个重要区别,即:调用上下文。

构造函数调用:

如果函数或者方法调用之前带有关键字new,它就构成构造函数调用。JavaScript构造函数调用的语法是允许省略实参列表和圆括号的。凡是没有形参的构造函数调用都可以省略圆括号,比如,下面两行代码是等价的:

    var o = new Object();    var o = new Object;

构造函数调用创建一个新的空对象,这个对象继承自构造函数的prototype属性。
构造函数通常不使用return关键字,他们通常初始化新对象,当构造函数的函数体执行完毕时,他会显示返回。

间接调用

JavaScript中的函数也是对象,和其他JavaScript对象没什么两样,函数对象也可以包含方法。其中的两个方法call()和apply()可以用来间接地调用函数。两个方法都允许显示指定调用所需的this值,


类和模块

在JavaScript中,类的实现是基于其原型继承机制的。

原创粉丝点击