本文为读 lodash 源码的第五十篇,后续文章会更新到这个仓库中,欢迎 star:pocket-lodash
gitbook也会同步仓库的更新,gitbook地址:pocket-lodash
isObject
用来判断一个值是否为 object
类型。
这个方法最主要的一点就是排除了 null
,看下源码的实现:
function isObject(value) {
const type = typeof value
return value != null && (type === 'object' || type === 'function')
}
可以看到,isObject
是基于 typeof
来实现的,typeof null
会返回 object
, 因此需要将 null
排除掉。
另外 function
其实也是 object
类型,但是用 typeof
来判断时,会返回 function
,所以也要对函数进行特殊的处理。
署名-非商业性使用-禁止演绎 4.0 国际 (CC BY-NC-ND 4.0)
最后,所有文章都会同步发送到微信公众号上,欢迎关注,欢迎提意见:
作者:对角另一面