JS引用与值

JavaScript 引用类型与值类型

值类型

  • 引号字符串字面值 <=> 值类型字符串
  • 整型(10, 8, 16base)/浮点型(10base)字面值 <=> 值类型算数(数值)类型
  • 布尔字面值 true/false <=> 值类型布尔
  • undefined (继承自null ?)
  • null (引用类型null)
  • 运算符 typeof T 返回字符串形式的 string, number, boolean, undefined, object
  • 而其对应的类型标识符为 String, Number, Boolean, Object, undefined
  • 注意: typeof null返回object; 这正是undefined存在的原因
  • 值类型没有成员/属性, 方法

引用类型

  • new String(…) <=> 引用类型字符串
  • new Number(…) <=> 引用类型算数(数值)类型
  • new Boolean(true/false/refB) <=> 引用类型布尔
  • JS Object Literal Notation
  • new T(…) <=> built-in type T \in { Obejct, Array, Date, RegExp, Function, customized(工厂方法) }
  • 运算符 typeof T 返回 object(单根继承?)
  • 注意if(), while(), for()需要的是值类型布尔; 以上5种类型与值类型布尔的转化见P45 JS高级程序设计, Also Intuitively
  • 注意 JS 中 T(…)new T(…)
  • 对于Common Usely
    • 第一种, 返回值类型
    • 第二种, 返回引用类型
  • 对于其他
    • 同义 => 都是引用类型