浅谈JavaScript数据类型
作者:bea
1.数据类型是什么? 我们接触的绝大多数程序语言来说,把数据都进行了分类,包括数字、字符、逻辑真假:int,long,string,boolean....等等;我们都知道计算机对数据处理时是采用二进制的方式。将数据加载到内存中,并且通过CPU调度进行计算得到最终结果,那么,难道内存存储数据时会记录所以数据的类型吗?我认为答案是否定的,内存中的数据应该会根据所占内存的大小来进行区分和计算的,两种不同类型数据的计算,对于CPU来说只是调度了两个所占内存大小不一的数据来进行计算,
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 的举例
代码如下:
var mesage='some string';
var obj=new Object();
var a;
alert(typeof message);//'string'
alert(typeof(message));//'string'
alert(typeof(95));//'number'
alert(typeof(a));//'undefined'
alert(typeof(null==undefined));//'boolean'
alert(null==undefined);//'true'
alert(obj);//'object'
alert(null);//'object'(在不同浏览器中也可能为'null')
以上就是关于javascript数据类型的所有内容了,希望大家能够喜欢。
有用 | 无用
我们接触的绝大多数程序语言来说,把数据都进行了分类,包括数字、字符、逻辑真假: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 的举例
代码如下:
var mesage='some string';
var obj=new Object();
var a;
alert(typeof message);//'string'
alert(typeof(message));//'string'
alert(typeof(95));//'number'
alert(typeof(a));//'undefined'
alert(typeof(null==undefined));//'boolean'
alert(null==undefined);//'true'
alert(obj);//'object'
alert(null);//'object'(在不同浏览器中也可能为'null')
以上就是关于javascript数据类型的所有内容了,希望大家能够喜欢。
有用 | 无用
猜你喜欢
您可能感兴趣的文章:
- JS运动基础框架实例分析
- jQuery DOM插入节点操作指南
- JS运动框架之分享侧边栏动画实例
- jQuery DOM删除节点操作指南
- JS实现表格数据各种搜索功能的方法
- 深入理解JavaScript系列(27):设计模式之建造者模式详解
- javascript验证身份证号
- JS烟花背景效果实现方法
- 深入理解JavaScript系列(26):设计模式之构造函数模式详解
- 深入理解JavaScript系列(25):设计模式之单例模式详解
- js+jquery常用知识点汇总
- js实现宇宙星空背景效果的方法
- Angular中的Promise对象($q介绍)
- nodejs URL模块操作URL相关方法介绍
- Javascript设计模式之观察者模式的多个实现版本实例
- Node.js 学习笔记之简介、安装及配置
- JS+CSS模拟可以无刷新显示内容的留言板实例
- JavaScript跨浏览器获取页面中相同class节点的方法
- JS实现鼠标点击展开或隐藏表格行的方法