JavaScript 函数高级应用与模式解析
1. 立即执行函数与对象初始化
1.1 立即执行函数
立即执行函数(Immediate functions)可用于定义对象属性。当需要定义一个在对象生命周期内不太可能改变的属性,且在定义前需要进行一些计算以确定正确值时,可使用立即执行函数来封装这些工作,其返回值将成为属性的值。
var o = {
message: (function () {
var who = "me",
what = "call";
return what + " " + who;
}()),
getMsg: function () {
return this.message;
}
};
// usage
o.getMsg(); // "call me"
o.message; // "call me"
立即执行函数的好处:
- 封装工作,不会留下全局变量,所有定义的变量都是自执行函数的局部变量,避免污染全局空间。
- 常用于书签脚本(bookmarklets),确保全局命名空间干净。
- 可将单个功能封装成自包含的模块,方便进行功能的添加、移除、拆分测试等操作。
定义模块的模板:
// module1 defined in module1.js
(function () {
// all the modul
超级会员免费看
订阅专栏 解锁全文
1294

被折叠的 条评论
为什么被折叠?



