1. undefined與null的區別? (1)undefined:定義了未賦值 (2)null:定義並賦值,只是值為null 2. 什麼時候給變數賦值為null呢? (1)初始賦值:表明將要賦值為對象 (2)結束前賦值:讓對象成為垃圾對象,被垃圾回收器回收
3. 嚴格區別變數類型與數據類型? (1)數據的類型 ---- 基本類型 ---- 對象類型 (2)變數的類型(變數記憶體值的類型) ---- 基本類型:保存的就是基本類型的數據 ---- 引用(物件)類型:保存的是地址值
<script type="text/javascript"> // 實例:實例對象 // 類型:類型對象 // Person是構造函數,也是類型對象 function Person(name, age) { this.name = name; this.age = age; } const person = new Person('白與瞳', 9999); console.log(person); class People { constructor(name, age) { this.name = name; this.age = age; } } // 根據類型創建的實例對象(簡稱:實例) const people = new People('展耀', 9999); console.log(people); // 1. undefined與null的區別? let a; console.log(a); // undefined a = null; console.log(a); // null // 表示初始賦值為null,表明將要賦值為對象 let b = null; // 確認對象就賦值 b = ['瞳耀', 999]; // 最後賦值為null,釋放b陣列佔用的內存 // 讓b指向的對象成為垃圾對象(被垃圾回收器回收) b = null; let c = {}; // c本身不是對象(物件),但是c可以找到對象(物件),因為c保存的是對象(物件)的地址值 let d = function () {}; // d是引用變數,因為函數是對象(物件),將對象(物件)賦值給一個變數, // 實際就是將對象(物件)的記憶體地址值保存到d裡面 console.log(typeof d); // 'function' </script>
文章標籤
全站熱搜