一.CSS中link和@import的區別是?
(1).link屬於HTML的標籤,而@import是CSS提供的。
(2).頁面載入時,link會被同時載入,而@import參照的CSS會等到頁面被載入完再載入。
(3).import只是IE5上才能識別,而link是HTML標籤沒有相容問題
二.如何實現瀏覽器內多個分頁之間的通訊?
呼叫localstorge,cookies等本地儲存方式
三.new操作符具體幹了什麼?
1.建立一個空物件,並且this變數參照該物件,同時還繼承了該函數的原型
2.屬性和方法被加入到this參照物件中
3.新建立的物件由this所參照,並且最後隱式的返回this
四document.write和innerHTML的區別
1.document.write只能重繪整個頁面
2.innerHTML可以重繪頁面的一部分
五.什麼叫優雅降級和漸進增強?
1.優雅降級:站點在所有新式瀏覽器中都能正
常工作,如果使用者使用的是老式瀏覽器,則程式碼會檢查以確認它們是否能正常工作.由於IE獨特的盒模型佈局問題,針對不同版本的IE的Hack實踐過優雅降級了,為那些無法支援功能的瀏覽器增加候選方案,使之在舊式瀏覽器上以某種形式降級體驗卻不至於完全失效。
2.漸進增強∶從被所有瀏覽器支援的基本功能開始,逐步地新增那些只有新式瀏覽器才支援的功能,向頁面增加無害於基礎瀏覽器的額外樣式和功能的。當瀏覽器支援時,它們會自動地呈現出來並行揮作用。
六.你有哪些效能優化的方法
1.減少http請求次數:css sprites,Js、CSS原始碼
壓縮、圖片大小控制合適;網頁Gzip,CDN託管,data快取,圖片伺服器
2.前端模板JS+資料,減少由於HTML標籤導致的頻寬浪費,前端用變數儲存AJA×請求結果,每次操作本地變數,不用請求,減少請求次數
3.用innerHTML代替DOM操作,減少DOM操作次數,優化javascript效能
4.當需要設定的樣式很多時設定className而不是直接操作style
5.少用全域性變數、快取DOM節點查詢的結果。減少IO讀取操作
6.避免使用CSS Expression (css表示式)又稱
Dynamic properties(動態屬性)
7.圖片預載入,將樣式表放在頂部,將指令碼放在底部,加上時間戳
七.JavaScript物件的幾種建立方式
1.工廠模式
2.建構函式模式
3.原型模式
4.混合建構函式和原型模式
5.動態原型模式
6.寄生建構函式模式
7.穩妥建構函式模式
八.JavaScript的繼承的六種方法
1.原型鏈繼承
2.借用建構函式繼承
3.組合繼承(原型+借用構造)
4.原型式繼承
5.寄生式繼承
6.寄生組合式繼承
九.AJAX的過程是怎樣的?
1.建立XMLHttpRequest物件,也就是建立一個非同步呼叫物件
2.建立一個新的Http請求,並指定該http請求的方法,URl及驗證資訊
3.設定響應HTTP請求狀態變化的函數
4…傳送http請求
5.獲取非同步呼叫返回的資料
6.使用JavaScript和DOM實現佈局重新整理