1. 分類 (1)基本(值)類型 ---- String:任意字符串 ---- Number:任意數字,和整數、小數、正數、負數無關 ---- boolean:true、false ---- undefined:undefined ---- null:null
(2)對象(引用)類型 / 物件類型 ---- Object:任意對象,包含Function、Array ---- Function:一種特別的對象,裡面的code是可以執行的 ---- Array:一種特別的對象,有數值下標屬性,內部數據是有序的 2. 判斷 (1)typeof:返回的是數據類型的字串表達, 可以判斷:undefined / number / string / boolean / function 不能判斷:null和object / array和object (2)instanceof:判斷對象(物件)的具體類型 (3)===:可以判斷:undefined / null
<script type="text/javascript"> // 1.基本類型 let a; console.log(a, typeof a, typeof a === 'undefined', a === undefined); // undefined, "undefined", true, true console.log(undefined === "undefined"); // false a = 999; console.log(typeof a === 'number'); // true a = 'sci'; console.log(typeof a === 'string'); // true a = true; console.log(typeof a === 'boolean'); // true a = null; console.log(typeof a, a === null); // object, true console.log('========================================'); // 2.對象(物件)類型 const b1 = { b2: [999, 'sci', console.log], b3() { console.log('b3'); return () => '我是function' }, }; // b1:實例對象,Object:構造函數,b1是不是Object的實例 console.log(b1 instanceof Object, b1 instanceof Array); // true, false console.log(b1.b2 instanceof Array, b1.b2 instanceof Object); // true, true console.log(b1.b3 instanceof Function, b1.b2 instanceof Object); // true, true console.log(typeof b1.b3 === 'function'); // true console.log('typeof b1.b2:', typeof b1.b2); // 'object' console.log(typeof b1.b2[2], typeof b1.b2[2] === 'function'); // 'function', true // 函數執行調用,直接在函數名後面加() b1.b2[2]('我是console.log()不要懷疑!!'); console.log(b1.b3()()); // 調用函數裡面的函數,b1.b3()是函數,要調用函數在加上() --> b1.b3()() </script>
文章標籤
全站熱搜
留言列表