数据的分类-JavaScript数据类型

JavaScript数据类型

1.数据类型是什么?

       我们接触的绝大多数程序语言来说,把数据都进行了分类,包括数字、字符、逻辑真假:int,long,string,boolean....等等;我们都知道计算机对数据处理时是采用二进制的方式。将数据加载到内存中,并且通过CPU调度进行计算得到最终结果,那么,难道内存存储数据时会记录所以数据的类型吗?我认为答案是否定的,内存中的数据应该会根据所占内存的大小来进行区分和计算的,两种不同类型数据的计算,对于CPU来说只是调度了两个所占内存大小不一的数据来进行计算,所以对于CPU来说,数据只有1和0。那么这里就出现了问题,有些人会说Java语言某两种数据不能直接计算,必须转换才能计算。这里,就是强类型和弱类型的区别,强类型语言会对每一种数据进行严格的检查,也就是对于每种类型内存所占空间进行检查,如果不符合要求,就不允许编译或者运行。弱类型则没有对数据进行严格的检查,允许大多数数据类型直接进行计算,JavaScript属于弱类型

2.JavaScript有哪些类型?

      包括以下几种:

      • Number:也就是数字包括浮点数
      • Boolean:真假(true or false)
      • String:字符串
      • Null:空对象指针,表明指向的内存空间不存在
      • Undefined:未定义,表明指向的内存空间存在,但是没有数据
      • Object:一中复杂的数据类型,如果熟悉类似Java面向对象语言,对此应该很好理解

通过以上这6中类型,就能将数据进行分类了,对于数据的容器JavaScript统一用关键字  var 声明,那么如何确定一个变量是那种类型呢?这就要用到关键字 typeof

这里,需要说明的是 typeof 是一个操作符(类似+、-、*、/) 而非 function 你可以直接 typeof  a 使用(尽管这样不推荐)。而 null undefined 在比较大小时是相等的。因为 undefined 派生自 null。

下边是 typeof 的举例

 1 var mesage=‘some string‘;
 2 var obj=new Object();
 3 var a;
 4 alert(typeof message);//‘string‘
 5 alert(typeof(message));//‘string‘
 6 alert(typeof(95));//‘number‘
 7 alert(typeof(a));//‘undefined‘
 8 alert(typeof(null==undefined));//‘boolean‘
 9 alert(null==undefined);//‘true‘
10 alert(obj);//‘object‘
11 alert(null);//‘object‘(在不同浏览器中也可能为‘null‘)

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。