前端面試題(十二)

  • html5 中怎麼關閉自動補全輸入

    h5新增的補全功能,菜鳥教程上寫的比較含糊比較難懂;
    解釋: 在部分瀏覽器上,foucs輸入框能夠把以前輸入過的值自動填入,若是不想自動填入,能夠關掉它;
    autocomplete="off"
    默認是"on" 開啓狀態

    通常業務下不會調整這個自動完成,由於對產品來講簡化用戶操做,建議打開javascript


  • ::before和:after中單冒號和雙冒號的區別是什麼,這兩個僞元素有什麼做用?

    區別 :css

    僞元素在css1中已經存在當時用單冒號,css3時作了修訂用雙冒號 ::before ::after表示僞元素用來區別僞類

    做用html

    ::before是在元素前面插入內容,::after則是在元素後面插入內容,不過須要content配合,而且插入的內容是inline的

  • 說說你對 javascript 的做用域的理解

    • 全局做用域
      在頂層環境中申明的變量都是全局做用域,他們的屬性其實都在window對象下面。
    • 函數做用域
      就是在函數內部進行聲明的,僅僅可只能在函數內部進行使用的變量,若是在別的地方進行使用,則會報錯.舉個例子:前端

      function fun () {
          var b = 123;
          console.log(b); 
      } 
      fun(); 
      console.log(b);

      咱們將上面的代碼貼在瀏覽器裏面,可以看到輸出的結果爲:
      image.png
      因而可知,這個變量 b 是定義在 fun 函數內的.只有在函數內部才能訪問到,在其餘地方都會找不到.html5

    • 塊級做用域
      es6 以後引入的塊級做用域.所謂的塊級做用域也就是所在一個代碼塊內(即一對花括號內)可以使用,而跳出這個代碼塊將不可以進行使用.在js中因爲要兼容老的做用域的規則,所以,使用var定義的變量在塊級以外可可以使用,而使用let定義的變量在塊級以外就不能使用.
      舉例說明:java

      {
        var _varNum = 123;
        let _letNum = 456;
      }
      console.log('_varNum:', _varNum);
      console.log('_letNum:', _letNum);

      結果以下:
      image.pngcss3


  • http都有哪些狀態碼?

    經常使用的一些狀態碼:git

    • 200 成功
    • 301 重定向
    • 304 (未修改) 自從上次請求後,請求的網頁未修改過。 服務器返回此響應時,不會返回網頁內容
    • 400 (錯誤請求) 服務器不理解請求的語法
    • 403 (禁止) 服務器拒絕請求
    • 404 (未找到) 服務器找不到請求的網頁
    • 500 (服務器內部錯誤) 服務器遇到錯誤,沒法完成請求
    • 501 (還沒有實施) 服務器不具有完成請求的功能。 例如,服務器沒法識別請求方法時可能會返回此代碼
    • 502 (錯誤網關) 服務器做爲網關或代理,從上游服務器收到無效響應
    • 503 (服務不可用) 服務器目前沒法使用(因爲超載或停機維護)。 一般,這只是暫時狀態
    • 504 (網關超時) 服務器做爲網關或代理,可是沒有及時從上游服務器收到請求
    • 505 (HTTP 版本不受支持) 服務器不支持請求中所用的 HTTP 協議版本
通常來講
200 成功  
4xx 前端問題  
5xx 後端問題

面試題摘自Githubes6

相關文章
相關標籤/搜索