1.执行环境判断 window 或 self
2017-11-14 10:43
281 查看
window
or self
?
在 underscore 的判断所处环境的代码中,似乎我们没有看到
window对象的引用,其实,在浏览器环境下,
self保存的就是当前
window对象的引用。那么相比较于使用
window,使用
self有什么优势呢?我们看到 MDN 上有这么一句话:
The Window.self read-only property returns the window itself, as a WindowProxy. It can be used with dot notation on a window object (that is, window.self) or standalone (self). The advantage of the standalone notation is that a similar notation exists for non-window contexts, such as in Web Workers.
概括来说,就是
self还能用于一些不具有窗口的上下文环境中,比如 Web Workers。所以,为了服务于更多场景,underscore 选择了更加通用的
self对象。
!(function(){ var root = (typeof self == "object" && self.self === self && self) || (typeof global == "object" && global.global === global && global) || this; });
相关文章推荐
- 解析如何通过PHP函数获取当前运行的环境 来进行判断执行逻辑(小技巧)
- 在类库内部判断代码执行环境
- [小技巧]通过PHP函数获取当前运行的环境 来进行判断执行逻辑
- window环境下批量执行sql文本
- Window环境定时执行任务
- 自定判断代码的执行环境
- 解析如何通过PHP函数获取当前运行的环境 来进行判断执行逻辑(小技巧)
- 原创 判断程序的执行环境是VM收藏
- 判断程序的执行环境是VM
- self.view.window在逻辑判断中的作用
- 本地window10环境测试PHP自动执行文件
- 判断程序的执行环境是VM
- 判断代码执行环境
- jmeter在window和linux环境下的执行
- (判断)window.open()窗口被关闭后执行事件
- window环境下编写定时器(执行php文件执行)
- Js使用window.parent ,window.top,window.self判断iframe嵌套
- window.parent 判断是否是被嵌入iframe里面
- JavaScript高级程序设计之变量、作用域和内存问题之执行环境及作用域第4.2讲敏敏笔记
- 用tarball实现liferay自动安装部署7-根据dnsdomainname判断节点环境