js——private 私有方法公有化

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>js——private 私有方法公有化</title>
</head>
<body>

<script>
    /*
     假设我们定义了一个函数,但并不想让外界修改它,于是将其设为私有。但有时候我
     们又希望让某些外部代码能访问到它,这该如何实现呢?解决方案是将这个私有函数赋值
     给一个公有属性
     * */
    var MYAPP = {};
        MYAPP.dom = (function () {
            var _setStyle = function (el, prop, value) {
                console.log('setStyle');
            };
            var _getStyle = function (el, prop) {
                console.log('getStyle');
            };

            // 把私有方法给一个公有属性
            return {
                setStyle: _setStyle,
                getStyle: _getStyle,
                yetAnother: _setStyle
            }
        }());
        // MYAPP.dom.setStyle 指向的是新的方法;
        MYAPP.dom.setStyle = function(){console.log('b');};
        MYAPP.dom.setStyle()  // 打印 b
        MYAPP.dom.yetAnother() // 打印私有setStyle


</script>
</body>
</html>

  

猜你喜欢

转载自www.cnblogs.com/hpx2020/p/10978726.html