首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MooTools 1.5.2探索typeOf和instanceOf

MooTools 1.5.2探索typeOf和instanceOf
EN

Stack Overflow用户
提问于 2016-01-03 13:39:11
回答 1查看 65关注 0票数 1

我决定研究MooTools javascript核心文件,以了解这种javascript框架是如何工作的,不幸的是,javascript中有很多东西让我很困惑,因为我不知道为什么特定的函数是这样形成的。

在MooTools核心javascript文件的开头,我看到了两个函数: typeOf和instanceOf。我不明白这两行代码的目的:

代码语言:javascript
复制
var typeOf = this.typeOf = function(item){
var instanceOf = this.instanceOf = function(item, object){

为什么函数被分配给typeOf变量和this.typeOf,为什么不只为var typeOf或只为this.typeOf分配函数?instanceOf也是如此。

如果有人能解释为什么函数被分配给变量和全局对象,我将非常感激,它能带来什么好处?我明白它是如何工作的,但我只是不明白为什么要这么做。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-01-03 16:20:35

var typeOf = this.typeOf有三个目的。一个是在文件中使用一个小变量名,避免一直使用this.typeOf,第二个也是更重要的是避免在this是其他东西的作用域中混合作用域。使用this.typeOf的第三个目的是将其导出到您所在的范围,并将MooTools导出到全局,例如浏览器中的window对象。

函数.typeOf在文档中描述,您可以将它看作比本机typeof更有用的方法。看看这些差异:

在MooTools中:

代码语言:javascript
复制
typeOf([]) // gives you "array"
typeOf({}) // gives you "object"
typeOf(document.createElement('div')) // gives you "element"

在本地JavaScript中

代码语言:javascript
复制
typeof [] // gives you "object"
typeof {} // gives you "object"
typeof document.createElement('div') // gives you "object"

因此,MooTools给出了一个更有价值的结果。类似的行为可以在中找到

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34577129

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档