30
วิธีส่วนตัวของ JavaScript
ในการสร้างคลาส 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สองสามครั้ง …