web前端筆試刷題總結(干貨)


最近在筆試上一直受挫,還是跟自己學習的方式有關,在初期學習未能好好注重基礎,所以在面對筆試還是很雞肋。希望自己在不斷的刷題以及對文檔的溫習中能有大的進步,此博客用來簡單記錄自己的刷題記錄。

一、JS篇

1、類型轉換

 

 

運行結果為:hi

 

  • if(x) 這里期望 x 是一個布爾類型的原始值,而 x 是一個對象,任何對象轉為布爾值,都為得到 true切記!在 JS 中,只有 0,-0,NaN,"",null,undefined 這六個值轉布爾值時,結果為 false)。
  • y = Boolean(0)而不是 y = new Boolean(0)。這兩個有很大區別,用 new 調用構造函數會新建一個布爾對象,此處沒有加 new,進行的是顯示類型轉換,正如上述第一條所說,0 轉換布爾,結果為 false,所以此時 y 的值就是 false。如果加了 new,那么 y 就是一個 Boolean 類型的對象

var變量提升但是賦值不提升

let、const變量不提升

2、javascript中實現跨域的方式總結

  • 第一種方式:jsonp請求;jsonp的原理是利用<script>標簽的跨域特性,可以不受限制地從其他域中加載資源,類似的標簽還有<img>.
  • 第二種方式:document.domain;這種方式用在主域名相同子域名不同的跨域訪問中
  • 第三種方式:window.name;window的name屬性有個特征:在一個窗口(window)的生命周期內,窗口載入的所有的頁面都是共享一個window.name的,每個頁面對window.name都有讀寫的權限,window.name是持久存在一個窗口載入過的所有頁面中的,並不會因新頁面的載入而進行重置。
  • 第四種方式:window.postMessage;window.postMessages是html5中實現跨域訪問的一種新方式,可以使用它來向其它的window對象發送消息,無論這個window對象是屬於同源或不同源。
  • 第五種方式:CORS;CORS背后的基本思想,就是使用自定義的HTTP頭部讓瀏覽器與服務器進行溝通,從而決定請求或響應是應該成功還是應該失敗。
  • 第六種方式:Web Sockets;web sockets原理:在JS創建了web socket之后,會有一個HTTP請求發送到瀏覽器以發起連接。取得服務器響應后,建立的連接會使用HTTP升級從HTTP協議交換為web sockt協議。

3、統計字符出現的次數

 

var str = "stiabsstringapbs" ;
  var obj = {};
  for (var i = 0; i < str.length; i++) {
           var key = str[i];
                if (!obj[key]) {
                   obj[key] = 1;
               } else {
                   obj[key]++;
                 }
   }
   var max = -1;
   var max_key = "" ;
   var key;
   for (key in obj) {
           if (max < obj[key]) {
                     max = obj[key];
                     max_key = key;
         }
  }
   alert( "max:" +max+ " max_key:" +max_key);

 

 

二、CSS篇

三、HTML篇


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM