使用公共方法创建一个JavaScript类,我会这样做:
function Restaurant() {}
Restaurant.prototype.buy_food = function(){
// something here
}
Restaurant.prototype.use_restroom = function(){
// something here
}
这样,我的班级的用户可以:
var restaurant = new Restaurant();
restaurant.buy_food();
restaurant.use_restroom();
如何创建可以由被称为私有方法buy_food和use_restroom方法,而不是通过外部类的用户?
换句话说,我希望我的方法实现能够做到:
Restaurant.prototype.use_restroom = function() {
this.private_stuff();
}
但是这不应该工作:
var r = new Restaurant();
r.private_stuff();
我如何定义private_stuff一个私有方法,所以这两个都适用?
我已经读了Doug Crockford的几次写作,但是看起来好像“私有”方法可以通过公共方法调用,“特权”方法可以从外部调用。
相似问题