欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

js——private 私有方法公有化

程序员文章站 2024-03-16 21:51:22
...
<!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>