码迷,mamicode.com
首页 > Web开发 > 详细

js中的5 种简单数据类型

时间:2015-03-31 14:30:22      阅读:330      评论:0      收藏:0      [点我收藏+]

标签:

一、数据类型概述:

    Undefined、Null、Boolean、Number 、String、Object(复杂数据类型)

 

 

 

二、Undefined类型:

      Undefined 类型只有一个值,即特殊的 undefined。

        在使用 var 声明变量,但没有对其初始化时,这个变量的值就是 undefined。

var box;
alert(box);

我们没有必要显式的给一个变量赋值为 undefined,因为没有赋值的变量会隐式的(自动的)赋值为 undefined;

undefined 主要的目的是为了用于比较

ECMAScript 第 3 版之前并没有引入这个值,引入之后为了正式区分空对象与未经初始化的变量。

未初始化的变量与根本不存在的变量(未声明的变量)也是不一样的。

var box;
alert(age); //报错:age is not defined

如果 typeof box,typeof age 都返回的 undefined。从逻辑上思考,他们的值,一个是 undefined,一个报错;他们的类型,却都是 undefined。所以,我们在定义变量的时候,尽可能的不要只声明,不赋值。

 

 

 

三、Null类型:

  Null 类型是一个只有一个值的数据类型,即特殊的值 null。它表示一个空对象引用(指针),而 typeof 操作符检测 null 会返回 object。

var box = null;
alert(typeof box);//object

如果定义的变量准备在将来用于保存对象,那么最好将该变量初始化为 null。这样,当检查 null 值就知道是否已经变量是否已经分配了对象引用了。

var box = null;
if (box != null) {
    alert(‘box 对象已存在!‘);
}

 

 

 

四、Boolean类型:

  Boolean 类型有两个值(字面量):true 和 false。而 true 不一定等于 1,false 不一定等于 0。

  JavaScript 是区分大小写的,True 和 False 或者其他都不是 Boolean 类型的值。

  虽然 Boolean 类型的字面量只有 true 和 false 两种,但 ECMAScript 中所有类型的值都有与这两个 Boolean 值等价的值。

  要将一个值转换为其对应的 Boolean值,可以使用转型函数 Boolean()。

      技术分享

var box = true;
alert(typeof box);
alert(box == 1);//true
alert(box == 0);//false
alert(box === 1);//结果为false
alert(typeof box == typeof 1);//false
 
var hello1 = ‘Hello World!‘;
var hello2 = Boolean(hello1);
alert(typeof hello1);//string
alert(typeof hello2);//boolean
alert(hello2);        //true,如果hello1的值为null的话  这里结果为false

上面是一种显示转换,属于强制性转换。而实际应用中,还有一种隐式转换。比如,在if 条件语句里面的条件判断,就存在隐式转换。

var hello = ‘Hello World!‘;
if (hello) {
     alert(‘如果条件为 true,就执行我这条!‘);  //如果hello这个字符串变量不是空字符串就执行这条,否则执行else下的语句
} else {
     alert(‘如果条件为 false,就执行我这条!‘);
}

 

js中的5 种简单数据类型

标签:

原文地址:http://www.cnblogs.com/LO-ME/p/4380454.html

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