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