【发布时间】:2017-07-28 11:19:07
【问题描述】:
作为初学者,我正在阅读 Nick Morgan 的 Javascript for Kids,我生成了以下 JavaScript 代码 -
var Car = function(x,y) {
this.x = x;
this.y = y;
}
Car.prototype.draw = function () {
var carHtml = '<img src="http://nostarch.com/images/car.png">';
this.carElement = $(carHtml);
this.carElement.css({
position:"absolute",
left:this.x,
top:this.y
});
}
var tesla = new Car (20,20);
var nissan = new Car (100,200);
tesla.draw();
nissan.draw();
现在,我使用 JavaScript 构造方法创建对象并使用 prototypes 技术创建 draw 方法,我可以调用从 car 的每个实例创建的汽车对象。
根据我在 Python 中的经验,所有方法都可以访问从类的实例创建的对象的所有属性。
我的问题是,汽车构造函数创建的对象中的所有方法都可以访问属性吗?
【问题讨论】:
-
是的,他们是。
-
请注意,您的
Car构造函数根本不创建任何方法。将draw添加到Car.prototype的代码创建了唯一的“方法”(这是松散意义上的“方法”;从 ES2015 开始,JavaScript 有了更严格的方法形式)。
标签: javascript jquery object properties