實現javaScript對象屬性私有

在賦值原型prototype的時候使用function立即執行的表達式來賦值,通過return暴露出想要給外部調用的方法,以達到public/private效果。

    function Calculator(){
        this.num = 102;
    }
    Calculator.prototype = function () {
        add = function (x, y) {
            console.log(subtract(2,1))
            return x + y + this.num;
        },

        subtract = function (x, y) {
            return x - y;
        }
        return {
            add: add,
            sub: subtract
        }
    } ();

    var calculator = new Calculator();
    console.log(calculator.add(1,2))
    console.log(calculator.sub(1,2))
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章