关于JavaScript的变量的数据类型的判断方法

 更新时间:2015年08月14日 15:11:53   作者:libuchao  
这篇文章主要介绍了关于JavaScript的变量的数据类型的判断方法,JS是一种弱类型语言,其数据类型的相关特性有时也受到不少开发者的诟病,需要的朋友可以参考下

  虽然Javascript是弱类型语言,但是,它也有自己的几种数据类型,分别是:Number、String、Boolean、Object、Udefined、Null。其中,Object属于复杂数据类型,Object   由无序的键值对组成。其余几种都属于简单数据类型。注意:变量类型首字母大写,而变量值首字母是小写的。
  JavaScript不支持自定义类型,所以JavaScript中的所有值都属于这六种类型之一。
  要搞清楚一个变量是何种数据类型,就要使用typeof操作符了,注意,尤其要注意的是,typeof是操作符,不是方法,因此,typeof中的字母'o'是小写的。
  语法:typeof temp;  //temp是一个变量,这里可以不加括号,但是为了程序的可读性,最好还是加上括号。

JavaScript 本身可以用它typeof来检测变量的类型,但是有些结果却让人疑惑,例如,数组的类型居然是"Object"。

下面是用typeof对各种数据类型的判断结果

var myFunction = function() {
  console.log('hello');
};

var myObject = {
  foo : 'bar'
};

var myArray = [ 'a', 'b', 'c' ];

var myString = 'hello';

var myNumber = 3;

typeof myFunction;  // 返回 'function'
typeof myObject;   // 返回 'object'
typeof myArray;   // 返回 'object' -- 小心哦!
typeof myString;   // 返回 'string';
typeof myNumber;   // 返回 'number'

typeof null;     // 返回 'object' -- 小心哦!


if (myArray.push && myArray.slice && myArray.join) {
  // 很可能是一个数组
  // 当看到一只鸟走起来像鸭子、游泳起来像鸭子、叫起来也像鸭子,那么这只鸟就可以被称为鸭子。
}

if (Object.prototype.toString.call(myArray) === '[object Array]') {
  // 肯定是一个数组!
  // 这是判断一个变量是否为数组的最可靠方法
}

 

相关文章

  • javascript RegExp 使用说明

    javascript RegExp 使用说明

    这篇文章主要介绍了javascript RegExp 使用说明 ,需要的朋友可以参考下
    2016-05-05
  • this.clientWidth和this.offsetWidth两个有什么不同

    this.clientWidth和this.offsetWidth两个有什么不同

    this.clientWidth和this.offsetWidth两个有什么不同...
    2006-10-10
  • 浅谈javascript中的加减时间

    浅谈javascript中的加减时间

    下面小编就为大家带来一篇浅谈javascript中的加减时间。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-07-07
  • javascript实现playfair和hill密码算法

    javascript实现playfair和hill密码算法

    这篇文章主要介绍了javascript实现playfair和hill密码算法,需要的朋友可以参考下
    2014-12-12
  • 裁剪字符串trim()自定义改进版

    裁剪字符串trim()自定义改进版

    下面讲述的是自定义trim()函数遇到的问题,改进的过程,建议在支持的浏览器中使用原生函数
    2013-04-04
  • JavaScript面对国际化编程时的一些建议

    JavaScript面对国际化编程时的一些建议

    这篇文章主要介绍了JavaScript面对国际化编程时的一些建议,包括时区与语言编码等一些值得注意的问题,需要的朋友可以参考下
    2015-06-06
  • 浅析JS操作DOM的一些常用方法

    浅析JS操作DOM的一些常用方法

    下面小编就为大家带来一篇JS操作DOM的一些常用方法。小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-05-05
  • javascript知识点详解

    javascript知识点详解

    下面小编就为大家带来一篇JavaScript基础知识点归纳(推荐)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2021-09-09
  • 深入理解JavaScript系列(41):设计模式之模板方法详解

    深入理解JavaScript系列(41):设计模式之模板方法详解

    这篇文章主要介绍了深入理解JavaScript系列(41):设计模式之模板方法详解,模板方法(TemplateMethod)定义了一个操作中的算法的骨架,而将一些步骤延迟到子类中,模板方法使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤,需要的朋友可以参考下
    2015-03-03
  • window.open参数详解附实例

    window.open参数详解附实例

    一般我们在开发过程中通过window.open打开新窗口,但现在浏览器与杀毒都防止了这个函数弹出页面,一般我们将页面设置信任才可以使用,不过我们在后台开发过程中仍然通过这个方法打开页面,这里简单介绍下使用方法与常用参数
    2013-06-06

最新评论