数据类型和变量

    数据类型

    计算机顾名思义就是可以做数学计算的机器,因此,计算机程序理所当然地可以处理各种数值。但是,计算机能处理的远不止数值,还可以处理文本、图形、音频、视频、网页等各种各样的数据,不同的数据,需要定义不同的数据类型。在JavaScript中定义了以下几种数据类型:

    Number

    JavaScript不区分整数和浮点数,统一用Number表示,以下都是合法的Number类型:

    123; // 整数123

    0.456; // 浮点数0.456

    1.2345e3; // 科学计数法表示1.2345x1000,等同于1234.5

    -99; // 负数

    NaN; // NaN表示Not a Number,当无法计算结果时用NaN表示

    Infinity; // Infinity表示无限大,当数值超过了JavaScript的Number所能表示的最大值时,就表示为Infinity

    计算机由于使用二进制,所以,有时候用十六进制表示整数比较方便,十六进制用0x前缀和0-9,a-f表示,例如: 0xff00 0xa5b4c3d2 ,等等,它们和十进制表示的数值完全一样。

    Number可以直接做四则运算,规则和数学一致:

    1 + 2; // 3

    (1 + 2) * 5 2; / 7.5

    2 0; / Infinity

    0 0; / NaN

    10 % 3; // 1

    10.5 % 3; // 1.5

    注意 % 是求余运算。

    字符串

    字符串是以单引号'或双引号"括起来的任意文本,比如 'abc' "xyz" 等等。请注意, '' "" 本身只是一种表示方式,不是字符串的一部分,因此,字符串 'abc' 只有 a b c 这3个字符。

    布尔值

    布尔值和布尔代数的表示完全一致,一个布尔值只有 true false 两种值,要么是 true ,要么是 false ,可以直接用 true false 表示布尔值,也可以通过布尔运算计算出来:

    true; // 这是一个true值

    false; // 这是一个false值

    2 > 1; // 这是一个true值

    2 >= 3; // 这是一个false值

    && 运算是与运算,只有所有都为 true && 运算结果才是 true

    true && true; // 这个&&语句计算结果为true

    true && false; // 这个&&语句计算结果为false

    false && true && false; // 这个&&语句计算结果为false

    || 运算是或运算,只要其中有一个为 true || 运算结果就是 true

    false || false; // 这个||语句计算结果为false

    true || false; // 这个||语句计算结果为true

    false || true || false; // 这个||语句计算结果为true

    ! 运算是非运算,它是一个单目运算符,把 true 变成 false false 变成 true

    ! true; // 结果为false

    ! false; // 结果为true

    ! (2 > 5); // 结果为true

    布尔值经常用在条件判断中,比如:

    var age = 15;

    if (age >= 18) {

    alert('adult');

    } else {

    alert('teenager');

    }