<!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>