JavaScript数据类型

原创 2018年04月16日 20:22:57

ECMAScript中有五种简单数据类型(基本数据类型):Undefined、Null、Boolean、Number和String。还有一种复杂数据类型:Object。因为ECMAScript数据类型具有动态性,所以这六种数据类型足够表示所有数据。

1、typeof操作符

    ECMAScript是松散类型,可以用typeof来检测给定变量的数据类型。typeof操作符返回字符串。

    "undefined"--表示这个值未定义。            

    "string"--表示这个值是布尔值。

    "number"--表示这个值是数值。

    "boolean"--表示这个值是布尔值。

    "object"--表示这个值是对象或者null。

    "function"--表示这个值是函数。

2、Udefined 类型

    Undefined类型只有一个值,即为undefined。

    在使用var声明变量但未其加以初始化时,这个变量的值就是undefined。

    对于未声明的变量执行typeof操作符同样会返回undefined。

var message;//该变量声明之后默认取得了undefined值。
alert(age);
alert(message);//undefined
alert(age);//undefined

3、Null类型

    Null类型只有一个值,即为null。

    从逻辑角度来看,null值表示一个空对象指针,因此typeof检测null值会返回"object"的原因。

    注意:

alert(null==undefined);//true
alert(null===undefined);//false

4、Boolean类型

    Boolean类型只有两个值,即为true和false。

    数据类型与Boolean之间的转换:

数据类型转换为true的值 转换为false的值
Boolean    true    false
String任何非空字符串""(空字符串)
Number任何非零数值(包括无穷大)0和NaN
Object任何对象null
Undefined undefined

5、Number类型

   Number类型包含整数和浮点数(浮点数数值必须包含一个小数点,且小数点后面至少有一位数字)和一个特殊值NaN(not a number)。

    NaN本身有两个非同寻常的特点。首先,任何涉及NaN的操作(NaN/10)都会返回NaN。其次,NaN与任何值都不相等,包括其本身。
alert(NaN==NaN);//false
    isNaN() 函数用于检查其参数是否是非数字值。

    有三个函数可以把非数值转换为数值:Number()、parseInt()、parseFloat()。第一个函数可以用于任何数据类型,而另两个专门用于字符串转换成数值。

    Number()转换规则:

        A.如果是Boolean值,true和false分别转换为1和0。

        B.如果是数字值,只是简单的传入和返回。

        C.如果是null值,返回0。

        D. 如果是字符串,遵循以下规则:

            a.如果只包含数字,将其转换为十进制数值,即"1"转换为1,"011"转换为11(前导零被忽视)。

            b.如果字符串中包含有效的浮点格式,将其转换为对应的浮点数值(前导零被忽视)。

            c.如果字符串中包含有效的十六进制格式,例如"0xf",将其转换为对应的十进制数值。

            d.如果字符串是空的,将其转换为0。

            e.如果包含上述格式之外的字符,将其转换为NaN。

        E.如果是对象,则调用对象的valueOf()方法,然后依照前面的规则转换返回值。如果转换的结果是NaN,则调用对象的toString()方法,然后依照前面的规则转换返回的字符串值。

6、String类型

    String类型用于表示由零个或多个16为Unicode字符组成的字符序列,即字符串。

    ECMAScript中的字符串是不可变的,字符串一旦创建,它们的值就不能改变。

    要把一个值转换为一个字符串有两种方法:toString()和String()。

    String():适用于任何数据类型(null,undefined 转换后为null和undefined)。

    toString():null,defined没有toString()方法。

7、Object类型

    ECMAScript中的对象其实就是一组数据和功能的集合。对象可以执行new操作符后跟要创建的对象类型的名称来创建。



本人正在学习和摸索中,如有错误,欢迎指正!

javascript里面的数据类型有哪些

W3Cschool上列举的数据类型是以下七中; 1.Number; 2.String; 3.Boolean; 4.Array; 5.Undefined; 6.Null; 7.Object. 然后: E...
  • Prince_fmx
  • Prince_fmx
  • 2017-09-02 21:21:45
  • 839

javascript的原始数据类型

本文讲述了js中的原始类型数据,重点讲述了原始数据类型的作用,所占空间等.......
  • Alisa09
  • Alisa09
  • 2017-05-11 23:28:04
  • 412

javascript原始数据类型

前面有提到过javascript的几个引用类型,还差了Function类型,想放在后面学习函数的时候一起总结。今天,主要是总结javascript基本包装类型的一些方法,细节方面也不做说明了。 jav...
  • linn721
  • linn721
  • 2014-03-01 19:56:18
  • 1239

浅谈JavaScript七种数据类型

JavaScript 有七种数据类型 string,number,boolean,array,object,Null,undefined 首先声明变量使用:var e.g. var x; do...
  • ReticentHuxt
  • ReticentHuxt
  • 2017-05-23 20:24:13
  • 411

JavaScript的数据类型、null 和undefined、原始数据类型和引用数据类型等JavaScript基础知识总结

一、JavaScript里有哪些数据类型,解释清楚null 和undefined,解释清楚原始数据类型和引用数据类型。比如讲一下1 和Number(1)的区别 数据类型:        undef...
  • Fabulous1111
  • Fabulous1111
  • 2017-03-06 19:07:00
  • 9956

javascript typeof返回的数据类型

1-----undefined         string         boolean         number           object -------对象或者null返回的是ob...
  • u014042556
  • u014042556
  • 2016-02-20 13:17:23
  • 3563

es6 javascript Symbol数据类型

ES5 的对象属性名都是字符串,这容易造成属性名的冲突。比如,你使用了一个他人提供的对象,但又想为这个对象添加新的方法( mixin 模式),新方法的名字就有可能与现有方法产生冲突。如果有一种机制,保...
  • qq_30100043
  • qq_30100043
  • 2016-12-02 10:57:00
  • 1475

详解javascript的【6种数据类型】

数据类型 (6种)基本数据类型(5种) Undefined类型 Null类型 Boolean类型 Number类型 String类型 复杂数据类型(1种) ...
  • baidu_32262373
  • baidu_32262373
  • 2016-09-22 00:23:03
  • 975

JavaScript数据类型, null 和 undefined,原始数据类型,引用数据类型

数据类型:         undefiend 没有定义数据类型         number 数值数据类型 例如 10或者1或者5.5         string 字符串数据类型用来描述文本...
  • splendid_can
  • splendid_can
  • 2016-11-26 14:55:24
  • 881

JavaScript 数据类型转换

  JavaScript是一种无类型语言,但同时JavaScript提供了一种灵活的自动类型转换的处理方式。基本规则是,如果某个类型的值用于需要其他类型的值的环境中,JavaScript就自动将这个值...
  • JLife
  • JLife
  • 2007-04-04 20:48:00
  • 9220
收藏助手
不良信息举报
您举报文章:JavaScript数据类型
举报原因:
原因补充:

(最多只允许输入30个字)