web前端面試題及答案

web前端面試題及答案

  引導語:瞭解一些面試題及答案,可以幫助自己順利透過面試哦。以下是小編為大家整理的web前端面試題及答案,供各位參考。

  1、怎樣新增、移除、移動、複製、建立和查詢節點?

  建立新節點:

  creatDocumentFragment(),建立一個DOM片段。

  creatElement(),建立一個具體的元素。

  creatTextNode(),建立一個文字節點。

  新增、移除、替換、插入:

  appendChild(),新增。

  removeChild(),移除。

  replaceChild(),替換。

  Before(),插入。

  查詢:

  getElementsByTagName(),透過標籤名稱。

  getElementsByName(),透過元素的Name屬性的值。

  getElementById(),透過元素id,唯一性。

  2、JS中什麼是偽陣列?如何將偽陣列轉化為標準陣列?

  偽陣列(類陣列):無法直接呼叫陣列方法或期望length屬性有什麼特殊的行為。但仍可以對真正陣列遍歷方法來遍歷它們。典型的是函式的arguement引數,還有像呼叫getElementsByTagName()、document.childNodes()之類的',它們都返回NodeList物件,都屬於偽陣列。可以用Array.prototype.slice.call(fakeArray)將陣列轉化為真正的Array物件。

  3、JS中callee和caller的作用。

  caller是返回一個對函式的引用,該函式呼叫了當前函式;

  callee是返回正在被執行的函式,也就是所指定的function物件的正文。

  4、請說出三種減低頁面載入時間的方法。

  1.壓縮CSS、JS檔案。

  2.合併JS、CSS檔案,減少HTTP請求。

  3.外部JS、CSS檔案放最底下。

  4.減少DOM的操作,儘可能用變數替代不必要的DOM操作。

  5、為什麼用多個域名來儲存網路資源會更有效?

  確保使用者在不同地區用最快的速度開啟網站,其中某個域名崩潰,使用者也能透過其他域名訪問網站。

  6、如何消除一個數組裡面重復的元素?

  indexOf():返回某個指定的字串值在字串中首次出現的位置,對大小寫敏感,若沒有,則返回-1。

  7、寫一個function,清除字串前後的空格(相容所有的瀏覽器)。

  8、統計字串中字母個數或統計最多字母數。

  str.charAt(i):返回指定位置的字元,i在0~str.length之間,如果i不在0~str.length之間,該方法返回一個空字串。

  9、擷取字串"abcdefg"中的"egf"。

  10、實現一個函式clone,可以對JS中的5種主要的資料型別(包括Number、String、Object、Array、Boolean)進行值複製。

  11、JS中如何檢測一個變數是string型別?

  typeof(obj)=="string";

  obj.constructor==string;

  12、寫出三個使用this的典型應用。

  事件:onclick this,發生事件的物件;

  建構函式:this,new出來的object;

  call/apply:改變this;

  13、網頁中實現一個計算當年還剩多少時間的倒計時程式,要求網頁上實時動態顯示“xx年還剩xx天xx時xx分xx秒”。

最近訪問