天天看点

JavaScript高级程序设计读书笔记—— 基本数据类型一、javaScript数据类型

一、javaScript数据类型

5种基本数据类型

1. undefined

2. null

3. boolean

4. Number

5. String

以及一种复杂数据类型  object

  1. undefined 类型只有一个值,即undefined。表示声明但未初始化的变量值
  2. null 类型是第二个只有一个值的类型,即null。表示空对象指针。

    使用typeof 操作符的时候会返回 object 。

    null == undefined  // true   尽管如此,在需要用到的时候,最好还是显示声明变量 = null;

    null === undefined //false

  3. boolean  在js中,该类型只有两个值,即 true 、false;
  4. Number

    a: 首位为0,表示八进制数。首位为0x 表示为十六进制数。永远不要对某个特定的浮点值进行测定。如 0.1+0.2 == 0.3 // false

    b: 正无穷: Infinity,负无穷: -Infinity ;

        isFinite( ) 函数可用来测定数字是否在数值范围内

    c: NaN 表示 not a number .任何NaN 有关的操作都会返回NaN,NaN与任何值都不想等,包括自身。例:5 / 0   // NaN;除数为0,返回NaN

    d: 数值转换。

            将非数值转化为数值:

              Number()  函数将会把null转化为0,undefined转化为NaN,空字符串转化为 0 ,其他字符串(如果该字符串不是完全由数字字符组成)转化为 NaN;

              parseInt( ) 函数则将会把空字符串转化为 NaN。该函数在进行转化时会对字符串进行逐字识别,直到遇到不能识别的非数字字符。

                                 该函数可以指定第二个参数:表示转化时使用的基数,即多少进制。如 parseInt("10", 2) // 2(按二进制解析)

              parseFloat()  与parseInt() 函数类似,会识别字符串直到遇到无效浮点数字符。  如 parseFloat(23.3.3) // 23.3 (第二个小数点将会被认为无效)

                                       不提供第二个参数,且该函数时钟都会忽略0, 如 parseFloat(020) // 0(将不会将020当作八进制数进行解析)

  5. String

    非字符串转化为字符串:

           toString() 数值、对象、布尔值和字符串都有该方法,但null、undefined 没有该方法。

                             可以传递参数,表示转化使用的基数,即进制。如 num = 10;num.toString(8) // 12;(num的数值被以八进制形式表示出来)

           String( )  在不知道要转化的值是否为 null 或 undefined 的时候,可以使用该转型函数。该函数能够将任何类型的值转化为字符串。

                       如果值由toString( )方法,则调用该方法。如果值为null或undefined,则直接返回其字面量 null  或 undefined;

  6. Object 

    创建对象: var o = new Object();

    a、Constructor 构造函数,保存着用于创建当前对象的函数

    b、hasOwnProperty(propertyName) 用于检查传入的属性名是否存在于当前对象实例

    c、isPrototypeOf( object ) 用于检查传入的对象是否是另一个对象的原型

    d、propertyEnumerable(propertyName) 用于检查给定的属性是否可用 for-in 语句进行枚举

    e、toLocalString() 返回字符串的对象表示,该字符串与执行环境的地区相对应

    f、toString() 返回对象的字符串表示

    g、valueOf() 返回对象的布尔值、数值或字符串表示,通常与toString()返回值相等。

继续阅读