您的位置:首页 > Web前端 > JavaScript

js基础--javascript基础概念之数据类型

2014-07-11 14:06 1171 查看
js基础--javascript基础概念之数据类型

数据类型
javascript有5种基本数据类型(简单数据类型) 分别如下:
1.undefined -- 未定义值;

2.boolean -- 布尔值;

3.string -- 字符串值;

4.number -- 数值;

5.null -- 空值;

还有一个复杂数据类型--- object object本质上是一组无序的名值对应组成的。

typeof 操作符:typeof不是一个函数 是一个操作符。
使用typeof操作符可能会返回如下某些字符串:

var str = '字符串';
var num = 100;
var bool = true;
var obj = new Object();
var Fun = function(){};
var un;
alert(typeof(str));//string
alert(typeof(num));//number
alert(typeof(bool));//boolean
alert(typeof(obj));//object
alert(typeof(Fun));//Function
alert(typeof(un));//undefined


typeof 不单单可以操作变量。还可以是数值字面量的操作。如:
alert(typeof("string"));//string
alert(typeof(11));//number


有时候 typeof也会返回一些令人迷惑但技术上又是正确的值。比如,调用typeof null 会返回object 。因为特殊值null 被认为是 空object 的引用。

Undefined 类型
Undefined 只有一个值。即特殊的undefined 。 在使用var 声明变量未初始化的值则为undefined。如
var demo;
//未初始化   undefined。

var demo = uneducated
是相等的。
一般没必要设置undefined的字面量。

Null 类型
Null类型是第二个只有一个值的数据类型。这个特殊的值是null 逻辑上看来 null 类型就是一个没有指针的的空对象。当你使用typeof 操作符时。返回的是一个对象。如:

var demo = null;
alert(typeof(demo));//object
如果你准备定义一个变量来保存object 。那么 建议你赋null值。
实际上 undefined是派生于null 值的。因此。
alert(null == undefined);
//true


Boolean类型
该类型只有两个值。True && false 。这两个值和数值不是一回事。True不一定等于1;false不一定等于0;
如果想要一个值转换为boolean 可以使用boolean函数。如;

var str = '字符串';
alert(Boolean(str));//true
例子中的str转换为了boolean值。Boolean()可以对任何数转换为布尔值。
至于转换的结果,则取决于实际要转换的值。下面是各类数值转换规则。

数据类型 True False
Boolean True False
String 任何非空字符串 空字符串
Number 任何非零的数值(无穷大) 0 和 NaN
Object 任何对象 null
Undefined N/A(不适用) Undefined

注意:Boolean 是区分大小写的,也就是说 只有true false 才是布尔值 其他都不是。

Number 类型
这种类型使用IEEE754格式来表示整数和浮点数值。
浮点数值;
所谓浮点 就是小数类型。数值中包含有小数点的。且小数点后面必须包含有一位小数以上。如
var a = 1.5;//正常的浮点式
var b = 0.5;//解析为0.8
var c = .8;//这样也可以正常解析 但是不建议这么写。
var d = 200.0;//解析为200
var e = 29.;//解析为29
var float = 9.22e4;//92200
浮点数值的最高精度是17位小数。但是进行算术运算时其精确度远远不如整数。例如,0.1 加 0.2 不是等于0.3 而是0.300000000000000004;小小的舍入误差导致无法测试特定的浮点值。例如;
if(0.1 + 0.2 == 0.3){
alert("True");
}else{
alert("Flase");//结果是这个
}
数值范围:
由于内存的限制,javascript表示的数值有个范围;能表示的最小的值保存在Number.MIN_VALUE ,而能表示的最大的值保存在Number.MAX_VALUE
alert(Number.MIN_VALUE);// 能表示的最小值是5e-324
alert(Number.MAX_VALUE);//能表示的最大值是1.7976931348623157e+308
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息