账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    js 使用闭包模拟私有变量
    46
    0
    function Ninja(){
        var feints = 0;
        this.getFeints = function(){
            return feints;
        };
        this.feint = function() {
            feints++;
        };
    }
    var ninja1 = new Ninja();
    ninja1.feint();
    console.log(ninja1.feints);
    console.log(ninja1.getFeints());
        

    //undefined
    //1
    我想问一下这里的闭包是怎么实现可以通过ninja1.getFeints()来获取累加之后的feints的值却无法直接通过ninja1.feints来获取值?

    是不是可以这样理解:ninja1.feints因为feints在构造函数的内部,所以无法访问,但通过调用ninja1.feint()这个方法,feints存在于闭包内,所以可以通过getFeints()进行返回?

    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部