4. 屬性描述符_訪問描述符

1. 屬性描述符web

描述屬性的屬性數組

writable  決定屬性是否能夠寫入(是不是一個只讀屬性)函數

enumerable  決定屬性是否能夠for in枚舉(遍歷)post

configurable  決定屬性是否能夠從新配置或者刪除es5

2. 訪問描述符spa

get 屬性獲取時調用的方法prototype

set 屬性設置時調用的方法線程

使用:code

Object.defineProperty(對象, 屬性名, {value: xxx})對象

Object.defineProperties(對象, {屬性名: {value: xxx}})

刪除屬性    delete xxx

密封對象    Object.seal(對象);

- 不能夠添加新屬性

- 不能夠刪除

- 能夠讀寫操做

凍結對象    Object.freeze(對象);

- 只能讀

- 不能寫入、刪除、添加操做

深度凍結:

  •     function deepFreeze(obj) {
            if (typeof obj !== 'object')return;
            //默認狀況下,先給第一層凍結
            Object.freeze(obj);
            //遍歷對象
            for (var key in obj) {
                //獲取屬性值
                var value = obj[key];
                deepFreeze(value);
            }
        }

3. web workers

H5 規範提供的 js 分線程的實現

Worker: 構造函數, 加載分線程執行的js文件

Worker.prototype.onmessage :  用於接收另外一個線程的回調函數

Worker.prototype.postMessage :  向另外一個線程發送消息

使用場景:通常大量計算的任務會交給分線程完成

4. es5 擴展的內容

嚴格模式

let 和 const 用來聲明變量的關鍵字

  • 在塊做用域內有效
  • 不能重複聲明
  • 不會預處理,  不存在提高
  • const定義的變量不能修改

JSON 方法

Object 擴展

Array 擴展

findIndex

map 加工處理數組的每一項值

filter 過濾數組中不須要的值

reduce 統計、求和

Funtion 擴展

相關文章
相關標籤/搜索