<mark>1. 兩大js數據類型</mark>
JavaScript 有 5 種基本數據類型:`Undefined、Null、Boolean、Number、String` 和 1 種復雜數據類型(引用類型) `Object` 。
<mark>2. 數據類型檢測法</mark>
```js
方法1:獲
typeof object; /* 返回object的數據類型 */
方法2:(推薦)
person instanceof Person; // 判斷person是不是Person對象,是返回true,否則返回false。person為對象Person的實例引用。
方法3:
Object.prototype.toString.call(person);
// person為Person對象的引用
// //如果person是null則返回Null,是undefined則返回Undefined,否則一律返回Object
```
<mark>3. 基本數據類型與引用數據類型的復制</mark>
* 基本類型在內存中占據固定大小的空間,因此被保存在棧內存中
* 從一個變量向另一個變量復制基本類型的值,復制的是值的副本
* 引用類型的值是對象,保存在堆內存
* 包含引用類型值的變量實際上包含的并不是對象本身,而是一個指向該對象的指針
* 從一個變量向另一個變量復制引用類型的值的時候,復制是引用指針,因此兩個變量最終都指向同一個對象,其中有一個發生改變另外一個也會發生改變,如下:
```js
function Person() { // 引用類型
this.name = "name";
this.age = "age";
}
var a = new Person();
console.log(a.name); // name
var b = a; // 將a復制給b
b.name = "BNAME"; // 將name屬性的值修改成"BNAME"
console.log(a.name); // BNAME 在b中修改了name,a的name也被修改了
console.log(b.name); // BNAME
```
- js應用場景
- js組成
- js書寫位置
- 浮點數精度問題
- undefined與null的區別
- 數據類型轉換
- 運算符優先級
- 代碼調試
- 函數
- 函數的定義和調用
- 函數的return細節
- 函數是一種數據類型
- this的指向
- 函數成員
- 函數閉包
- 作用域
- 預解析
- js對象
- 對象的創建與調用
- new關鍵字
- this關鍵字
- 構造函數創建對象
- 事件
- 數據類型
- 繼承
- 雜項
- 如何阻止標簽的默認行為
- 為一個標簽綁定或移除任何一個事件
- 如何阻止事件的冒泡行為
- 事件的三個階段
- 移動元素的條件
- 勻速動畫函數封裝
- 變速動畫函數封裝
- 獲取元素的css屬性值
- 數據類型判斷方法
- 創建對象的7種寫法
- 如何繼承
- 為js內置對象添加原型函數
- 將局部變量轉換為全局變量
- call函數的用法
- 沙箱
- 淺拷貝
- 深拷貝
- 對象賦值會改變對象
- 解析URL中的字符串
- 格式化日期
- 獲取當前瀏覽器類型
- Vue3.x
- 調式工具Vue Devtools