javascript 类型判断代码分析
javascript 类型判断代码分析
发布时间:2016-12-30 来源:查字典编辑
摘要:复制代码代码如下:varis=function(obj,type){vartoString=Object.prototype.toStrin...

复制代码 代码如下:

var is = function(obj,type){

var toString=Object.prototype.toString,undefined;

return obj===null&&type==='Null'||

obj===undefined&&type==='Undefined'||

toString.call(obj).slice(8,-1)===type;

}

//原文中有小括号包裹每个逻辑与运算,但根据运算符优先级,括号可以省略

//第一行声明undefined,个人理解是为了提高性能,不必再去顶级作用域中查询undefined.

根据ECMA-262中的解释,Object.prototype.toString(),将返回对象实例的类型,返回格式"[object ", class, and "]"字符串。

所以 通过 slice截取'class'值,也就是类型值。

其中null与undefined例外,因为他们返回的是

IE中[object Object]

标准浏览器[object Window]。

因此单独拿出判断。

相关文章:javascript 深拷贝

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新Javascript教程学习
热门Javascript教程学习
编程开发子分类