严格来说,JavaScript并不是一门面向对象的语言,因为它没有原生提供完整的面向对象机制。但它的语言特性又允许我们去模拟大部分这些机制。
new操作符
JavaScript中也用new操作符创建类的实例,例如:
var arr = new Array(10); // 创建长度为10的数组
var date = new Date; // 不需要传参数给构造函数时,括号可以省略与C#不同的是,JavaScript中new的是函数而不是class,这个函数即为类的构造函数。在构造函数中,可以声明属性和方法。例如:
function Square() {
this.length = 1;
this.perimeter = function() {
return this.length * 4;
};
}
var square = new Square();
square.perimeter(); // 4
square.length = 10;
square.perimeter(); // 40