码迷,mamicode.com
首页 > 其他好文 > 详细

typeof

时间:2017-06-18 15:10:10      阅读:157      评论:0      收藏:0      [点我收藏+]

标签:prot   类型   str   type   script   eof   对象   nbsp   efi   

typeof 可能返回的值

  javascript中数据一共有6种数据类型,他们分别为number、undefined、null、string、boolen、object,在es6中新增一种symbol。

  typeof(number) 返回的是‘number‘ 字符串,这里的包括NaN,Infinity。

  typeof(undefined) 返回的是‘undefined‘字符串。

  typeof(null) 返回的是‘object‘字符串,null是一种特殊的对象。

  typeof(string) 返回的是‘string‘字符串。

  typeof(boolen) 返回的是‘boolen‘字符串。

  typeof(object) 当对象为数组和普通对象是返回‘object‘字符串,当对象为function时返回‘function‘字符串。

  typeof(symbol) 返回的是‘symbol‘字符串。

所以综上所述,除了null、普通object对象和数组无法用typeof区分,其他都可以用typeof来准确的判断他们的类型。

那怎么区分他们呢?

  Object.prototype.toString.call(1);//‘[object Number]‘

  Object.prototype.toString.call(‘1‘);//‘[object String]‘

  Object.prototype.toString.call(undefined);//‘[object Undefined]‘

  Object.prototype.toString.call({});//‘[object Object]‘

  Object.prototype.toString.call([]);//‘[object Array]‘

  Object.prototype.toString.call(true);//‘[object Boolen]‘

  Object.prototype.toString.call(function () {});//‘[object Function]‘

  Object.prototype.toString.call(Symbol());//‘[object Symbol]‘

值得注意的是 使用Object.prototype.toString.call传入 Object、Array、Function、Boolen、Symbol、Number等返回的都是‘[object Function]‘,因为他们自身就是方法。

 

  

typeof

标签:prot   类型   str   type   script   eof   对象   nbsp   efi   

原文地址:http://www.cnblogs.com/TonyLearning/p/7044285.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!