1、dom操作-------怎樣新增、移除、移動、複製、建立和查詢節點?
建立新節點:createdocumentframent() // 建立乙個dom片段
createelement() // 建立乙個具體的元素
createtextnode() // 建立乙個文字節點
移除節點:removechild()
替換節點:replacechild()
插入節點:insertbefore() // 在已有的子節點前插入新節點
查詢節點:getelementbytagname() // 通過標籤名稱查詢
getelementbyclassname() // 通過類名查詢
getelementbyid() // 通過id查詢
2、如何實現瀏覽器內多個標籤頁之間的通訊?
呼叫localstorage、cookies等本地儲存方式。
3、如何對**的檔案和資源進行優化?
檔案合併
檔案最小化、檔案壓縮
使用cdn託管
使用快取
其他。。。。
4、減少頁面載入時間的方法?
優化優化css(壓縮合併)
**後加斜槓
減少http請求(合併檔案,合併)
5、null和undefined的區別?
null是乙個表示「無」的物件,轉為數值時為0;undefined是乙個表示「無」的原始值,轉為數值時為nan;
當宣告的變數還未被初始化時,變數的預設值為undefined,null用來表示尚未存在的物件,常用來表示函式企圖表示乙個不存在的物件;
undefined表示「缺少值」,就是此處應該有乙個值,但是還沒有定義。典型的用法如下:
1)變數被宣告了,但沒有賦值時,等於undefined;
2)呼叫函式時,應該提供的引數沒有提供,該引數等於undefined;
3)物件沒有賦值的屬性,該屬性的值為undefined;
4)函式沒有返回值時,預設返回undefined。
null表示「沒有物件」,即該處不應該有值。典型用法如下:
1)作為函式的引數,表示該函式的引數不是物件;
2)作為物件原型鏈的終點。
6、document.write和innerhtml的區別?
前者只能重繪整個頁面
後者可以重繪頁面的一部分。
作用:動態改變某個類的某個方法的執行環境。
區別:
Js前端面試題
1.判斷js型別的方法 1 typof 2 可以判斷出 string boolean undefiend number 3 但是判斷typeof null 時值為object 判斷物件陣列的時候也是object object.prototype.tostring.call 可以判斷出所有型別 arr...
前端面試題 Js
1.原型 原型鏈 建構函式 例項 繼承 原型 proto 原型物件 prototype 用作建構函式中有prototype 原型物件 例項中有 proto 2.有幾種方式可以實現繼承 原型繼承,構造繼承,例項繼承,拷貝繼承,組合繼承,寄生組合繼承,class繼承 3.用原型實現繼承有什麼缺點,如何解...
array 前端面試題 JS陣列的前端面試題
關於陣列的前端面試題 如何判斷乙個變數是否為陣列?為什麼不用 typeof var list 1,2,3 typeof list object array 繼承與object 所以typeof 會直接返回 object 所以不可以用 typeof 方法來檢測 為什麼不用 instanceof?var...