javascript - js类型判断,闭包
本文介绍了javascript - js类型判断,闭包的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
type = (function(){
var object_prototype_toString = Object.prototype.toString
return function(obj){
return object_prototype_toString.call(obj).replace('[object ','').replace(']','')
}
})()
看到一段代码,如上,个人理解这里应该应用了闭包,但是不太明白,这样写跟直接将type定义为
type = function(obj){
var object_prototype_toString = Object.prototype.toString;
return object_prototype_toString.call(obj).replace('[object ','').replace(']','')
}
的好处是什么呢?可以少声明var object_prototype_toString = Object.prototype.toString;
?
解决方案
两种写法基本上是一样的。只有一点区别:
var object_prototype_toString = Object.prototype.toString;
的执行次数。
第一种方式,只执行一次;第二种方式,每调一次type
函数都会执行一次。
从这个角度看,第一种方式好一些。
这篇关于javascript - js类型判断,闭包的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文