eg: let [(a)] = [1]; //報錯
eg: function f([(z)]) { return z; } // 報錯
eg: ({ p: a }) = { p: 42 };
undefined
、null
、布爾值(Boolean)、字符串(String)、數值(Number)、對象(Object)。<script src="path/to/myModule.js" defer></script> <script src="path/to/myModule.js" async></script>上面代碼中,
<script>
標籤打開defer
或async
屬性,腳本就會異步加載。渲染引擎遇到這一行命令,就會開始下載外部腳本,但不會等它下載和執行,而是直接執行後面的命令。defer
與async
的區別是:defer
要等到整個頁面在內存中正常渲染結束(DOM 結構徹底生成,以及其餘腳本執行完成),纔會執行;async
一旦下載完,渲染引擎就會中斷渲染,執行這個腳本之後,再繼續渲染。defer
是「渲染完再執行」,async
是「下載完就執行」。defer
腳本,會按照它們在頁面出現的順序加載,而多個async
腳本是不能保證加載順序的。