<script>
//通过自调用函数产生一个随机数对象,在自调用函数外面,调用该随机数对象方法产生随机数
(function (window) {
//产生随机数的构造函数
function Random() {
}
//在原型对象中添加方法
Random.prototype.getRandom = function (min, max) {
return Math.floor(Math.random() * (max - min) + min);
};
//自调用函数中的普通函数是私有函数,只能够在当前自调用函数内部使用
//要想把这个方法暴露给外部,可以设置给window,或者设置给Random函数
function test1() {
console.log("test1");
}
//把Random对象暴露给顶级对象window--->外部可以直接使用这个对象
window.Random = Random;
})(window);
//实例化随机数对象,这边能够使用Random函数,原因是Random函数已经被绑定到了window对象上
var rm = new Random();
//调用方法产生随机数
console.log(rm.getRandom(0, 5));
test1(); //无法访问,test1()是私有函数
</script>