源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

JavaScript中使用typeof运算符需要注意的几个坑

  • 时间:2021-01-07 08:23 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:JavaScript中使用typeof运算符需要注意的几个坑
typeof是一个运算符,它对操作数返回的结果是一个字符串,有6种(只针对ES,不包含HOST环境对象)。 1.'undefined' 2.'boolean' 3.'string' 4.'number' 5.'object' 6.'function' 因为它本身是运算符,它不是函数,使用时没必要加个小括号。
[u]复制代码[/u] 代码如下:
if (typeof(obj) === 'undefined') {     // ... }
typeof用来判断类型,它有几个坑 [b]1. 对null返回是'object',你却不能真正当对象使用。[/b]
[u]复制代码[/u] 代码如下:
var obj = null if (typeof obj === 'object') {     obj.a() // 这里报错 }
[b]2. 对NaN返回是'number',你却不能使用它进行算术运算。[/b]
[u]复制代码[/u] 代码如下:
var obj = {} var num = parseInt(obj.a) if (typeof num === 'number') {     num = num + 10 // 执行后num仍然是NaN }
[b]3. 不能区分对象、数组、正则,对它们操作都返回'object'。[/b]
[u]复制代码[/u] 代码如下:
var obj = {} var arr = [] var reg = /pop/g console.log(typeof obj) // 'object' console.log(typeof arr) // 'object' console.log(typeof reg) // 'object'
[b]4. Safar5,Chrome7之前的版本对正则对象返回 'function'。[/b] 最后贴上规范里的解释 [img]http://files.jb51.net/file_images/article/201411/201411893852102.png?2014108105453[/img]
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部