摘要:面試闖關在面試過程中,總會被問到一些你用到過但是記不清一些零碎的知識,現在做一下總結。在兼容模式中,頁面以寬松的向后兼容的方式顯示模擬老式瀏覽器的行為以防止站點無法工作。作為對象原型鏈的終點。格式采用鍵值對,例如參考面試總結
面試闖關1
在面試過程中,總會被問到一些你用到過、但是記不清一些零碎的知識,現在做一下總結。
第一部分:HTML+CSS 1.常用那幾種瀏覽器測試?有哪些內核(Layout Engine)?主要內核:Trident,Gecko,Presto,Webkit。
IE(Trident)、Firefox(Gecko)、Opera(Presto)、Chrome(Webkit)
2.box-sizing常用的屬性有哪些?分別有什么作用?content-box:在寬度和高度之外繪制元素的內邊距和邊框。
border-box:為元素指定的任何內邊距和邊框都將在已設定的寬度和高度內進行繪制。
inherit:從父元素繼承 box-sizing 屬性的值。
3.Doctype作用?標準模式與兼容模式各有什么區別?Doctype作用:告知瀏覽器的解析器用什么文檔標準解析這個文檔。DOCTYPE不存在或格式不正確會導致文檔以兼容模式呈現。
區別:標準模式的排版和JS運作模式都是以該瀏覽器支持的最高標準運行。在兼容模式中,頁面以寬松的向后兼容的方式顯示,模擬老式瀏覽器的行為以防止站點無法工作。
4.頁面導入樣式時,使用link和@import 、行內、嵌入中有什么區別?行內:失去的css的優勢,但是優先級最高
嵌入:style方式,修改起來復雜
@inportant:頁面全部加載完成才導入css,在頁面非常大的情況下會到時頁面加載完成閃一下出現樣式
link:在頁面加載之前加載css文件
5.介紹一下你對瀏覽器內核的理解?主要分成兩部分:渲染引擎(layout engineer或Rendering Engine)和js引擎。
渲染引擎:負責取得網頁的內容(HTML、XML、圖像等等)、整理訊息(例如加入CSS等),以及計算網頁的顯示方式,然后會輸出至顯示器或打印機。
瀏覽器的內核的不同對于網頁的語法解釋會有不同,所以渲染的效果也不相同。所有網頁瀏覽器、電子郵件客戶端以及其它需要編輯、顯示網絡內容的應用程序都需要內核。
JS引擎則:解析和執行javascript來實現網頁的動態效果。
最開始渲染引擎和JS引擎并沒有區分的很明確,后來JS引擎越來越獨立,內核就傾向于只指渲染引擎。
6.html5有哪些新特性?如何處理HTML5新標簽的瀏覽器兼容問題?如何區分 HTML 和 HTML5?HTML5現在已經不是SGML的子集,主要是關于圖像,位置,存儲,多任務等功能的增加。
拖拽釋放(Drag and drop) API
語義化更好的內容標簽(header,nav,footer,aside,article,section)
音頻、視頻API(audio,video)
畫布(Canvas) API
地理(Geolocation) API
本地離線存儲 localStorage 長期存儲數據,瀏覽器關閉后數據不丟失;
sessionStorage 的數據在瀏覽器關閉后自動刪除
表單控件,calendar、date、time、email、url、search
新的技術webworker, websocket, Geolocation
移除的元素
純表現的元素:basefont,big,center,font, s,strike,tt,u;
對可用性產生負面影響的元素:frame,frameset,noframes;
支持HTML5新標簽:
IE8/IE7/IE6支持通過document.createElement方法產生的標簽,
可以利用這一特性讓這些瀏覽器支持HTML5新標簽,
瀏覽器支持新標簽后,還需要添加標簽默認的樣式:
當然最好的方式是直接使用成熟的框架、使用最多的是html5shim框架
HTML語義化:根據內容的結構化(內容語義化),選擇合適的標簽(代碼語義化)便于開發者閱讀和寫出更優雅的代碼的同時讓瀏覽器的爬蟲和機器很好地解析。
8.清除浮動有哪些方式?比較好的方式是哪一種?關閉浮動&BFC
使用after清除浮動的好處原理
RunJS清除浮動代碼
第二部分:JS 1.js的基本數據類型?null 、undefined、boolean、string、number
2.js有哪些內置對象?數據封裝類對象:Object、Array、Boolean、Number 和 String
其他對象:Function、Arguments、Math、Date、RegExp、Error
3.js中的this、call和apply純函數調用,this指向全局對象global
作為對象方法的調用:指向調用他的對象
作為構造函數調用,指向新對象
自己做的總結:鏈接
4.eval是做什么的?把對應的字符串解析成JS代碼并運行。 alert(eval("2"+"2")) //alert(4)
應該避免使用eval,不安全,非常耗性能(2次,一次解析成js語句,一次執行)。
JSON字符串轉換為JSON對象的時候可以用eval,var obj =eval("("+ str +")")。
5.null和undefined的區別?null是一個表示"無"的對象,轉為數值時為0;undefined是一個表示"無"的原始值,轉為數值時為NaN。
undefined:
(1)變量被聲明了,但沒有賦值時,就等于undefined。
(2) 調用函數時,應該提供的參數沒有提供,該參數等于undefined。
(3)對象沒有賦值的屬性,該屬性的值為undefined。
(4)函數沒有返回值時,默認返回undefined。
null:
(1) 作為函數的參數,表示該函數的參數不是對象。
(2) 作為對象原型鏈的終點。
6.new操作符具體干了什么呢?(1)創建一個空對象,并且 this 變量引用該對象,同時還繼承了該函數的原型。
(2)屬性和方法被加入到 this 引用的對象中。
(3)新創建的對象由 this 所引用,并且最后隱式的返回 this 。
7.JSON 的了解?JSON(JavaScript Object Notation) 是一種輕量級的數據交換格式。它是基于JavaScript的一個子集。數據格式簡單, 易于讀寫, 占用帶寬小。
格式:采用鍵值對,例如:{"age":"12", "name":"back"}
參考面試總結
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/116417.html
摘要:面試闖關在面試過程中,總會被問到一些你用到過但是記不清一些零碎的知識,現在做一下總結。在兼容模式中,頁面以寬松的向后兼容的方式顯示模擬老式瀏覽器的行為以防止站點無法工作。作為對象原型鏈的終點。格式采用鍵值對,例如參考面試總結 面試闖關1 在面試過程中,總會被問到一些你用到過、但是記不清一些零碎的知識,現在做一下總結。 第一部分:HTML+CSS 1.常用那幾種瀏覽器測試?有哪些內核(L...
摘要:對象數組初始化表達式,闖關記之上文檔對象模型是針對和文檔的一個。闖關記之數組數組是值的有序集合。數組是動態的,根闖關記之語法的語法大量借鑒了及其他類語言如和的語法。 《JavaScript 闖關記》之 DOM(下) Element 類型 除了 Document 類型之外,Element 類型就要算是 Web 編程中最常用的類型了。Element 類型用于表現 XML 或 HTML 元素...
閱讀 683·2021-11-23 09:51
閱讀 3275·2019-08-30 15:54
閱讀 440·2019-08-30 15:52
閱讀 3107·2019-08-30 13:58
閱讀 2912·2019-08-30 13:53
閱讀 2683·2019-08-29 14:18
閱讀 2406·2019-08-27 10:54
閱讀 2363·2019-08-26 18:09