[心得筆記]JS 上課記錄 part2

原始型別:數值

var a = Number('100');  => 轉型
var a = Number('100 aa');  =>轉型失敗 => NaN
var a = parseInt('100 aa', 10);  =>  字串會被解析去掉 ,以10進位為基底


建議一律使用parseInt/parseFloat, 一律加上第二個參數, 明確指定基數

也有人用 + 強迫引發自動轉型
ex:
var a ='7';  var  b = +(a);

也可使用(N).toString(baseN)轉換進制
ex:
(0xEF).toString(10);
(65535).toString(16);



原始型別 : 字串(String)

var a = 'Bill';
var a = new String('Bill');
     String {0: "B" , 1: "i", 2: "l", 3: "l"}
   JSON用得字串應用雙引號

var a = String('Bill');
var b = a[0]  => 取得第一個字元

length 屬性
String包裹物件 提供一組HTML相關操作方法




== 或 !=  (隱含比對,會觸發自動轉型)
=== 或 !== (明確比對)

使用!! 強迫引發自動轉型
var a = !!(0);
var b = !!("0");

null只能跟null與null 與 undefined 比較
NaN跟任何物件比較都是false



空值(null)
var a = null;
null是一個物件,不是真的“NULL"
所有的null物件都是連結到系統唯一的一個null物件
null物件永遠不會執行GC(記憶體不會被回收)  建議不要使用null 物件



undefined  是一個全域變數
windows.undefined === undefined



留言