task 16

CSS和JS在網頁中的放置順序是怎樣的?
css使用link標簽放在頂部 <head></head>中。

  1. 把css樣式放在底部會出現白屏,fouc等現象。
  2. 使用@import標簽即使放在link標簽中且放在頭部,也有可能出現白屏。

js放在底部
放前面因為js是按順序加載,腳本會阻塞后面內容的呈現,會阻塞其后組件的下載,也會出現白屏現象。

解釋白屏和FOUC
白屏:瀏覽器在等待頁面組件包括樣式表全部加載完成后才呈現整個頁面。若樣式表放在頁面底部,將會出現白屏?!獦邮奖碓陧撁嬷形恢貌⒉挥绊戫撁嬷薪M件的下載時間,但是會影響頁面的呈現。
fouc:如果把樣式放在底部,對于IE瀏覽器,在某些場景下(點擊鏈接,輸入URL,使用書簽進入等),會出現 FOUC 現象(逐步加載無樣式的內容,等CSS加載后頁面突然展現樣式).對于 Firefox 會一直表現出 FOUC .

async和defer的作用是什么?有什么區別
defer使得browsers延遲腳本的執行,直到文檔的載入和解析完成,并可以操作(在onload事件觸發前)。
async使得browsers可以盡快地執行腳本,而不用在下載腳本時阻塞文檔解析(異步)。在不支持async的browsers中,通過動態創建<script>元素并把它插入文檔中,來實現腳本的異步載入和執行。
若兩個屬性同在,會忽略defer而遵從async

簡述網頁的渲染機制

  1. 解析html標簽,構建dom樹
  2. 解析css標簽,構建cssom樹
  3. 把dom和cssom組合成渲染樹(render tree)
  4. 在渲染樹的基礎上進行布局,計算每個節點的幾何結構
  5. 把每個節點繪制到屏幕

JavaScript 定義了幾種數據類型? 哪些是簡單類型?哪些是復雜類型?
JS定義了5種簡單類型:Undefined;Null;Boolean;Number和String
1種復雜類型:Object

NaN、Undefined、Null分別代表什么?
NaN:"not a number"即非數值,用于表示一個本來要返回數值的操作數未返回數值的情況,任何涉及NaN的操作都會返回NaN。
Undefined:代表聲明變量但未對其初始化。
Null:表示一個空對象指針,常用于定義變量用于將來保存對象。

typeof和instanceof的作用和區別?
typeof:一元運算符,用來返回操作數類型的字符串
instanceof 運算符是用來測試一個對象是否在其原型鏈原型構造函數的屬性。其語法是object instanceof constructor。

代碼1:

Paste_Image.png

代碼2:

Paste_Image.png

代碼3:

Paste_Image.png

代碼4:
var arr = [3,4,5]; for(i=0;i<3;i++){ console.log(arr[i]*arr[i]) };
代碼5:
var obj = {name:'hunger',sex:'mail',age:'28'} for(key in obj){ console.log(obj[key]); };

代碼6:

Paste_Image.png
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • JavaScript基本概念、基礎數據類型、運算符、流程控制語句。 一、CSS和JS在網頁中的放置順序是怎樣的? ...
    婷樓沐熙閱讀 447評論 0 2
  • JS基礎知識 1.CSS和JS在網頁中的放置順序是怎樣的?## 一般來說CSS放在頂部,JS放在底部加載 css放...
    lurker閱讀 534評論 0 0
  • 簡單介紹JavaScript的發展歷史 JavaScript因互聯網而生,回顧它的歷史要從瀏覽器的歷史講起。 19...
    _Dot912閱讀 508評論 0 3
  • javascript javascript !== java 是客戶端腳本語言ECMAScript, DOM, B...
    YQY_苑閱讀 128評論 0 0
  • 越女天下白,鑒湖五月涼。 剡溪蘊秀異,欲罷不能忘。 ——杜甫《壯游》 相見就是有緣,我愿做一條 若耶溪里的小魚,窮...
    溫州慕白閱讀 377評論 0 1