個推面試總結


  今天是2017年11月11日,9號投的簡歷,昨天中午收到電話通知。下午去參加宣講會,但去的有點遲了,所以在另一個教室等筆試,結果宣講完了之后hr過來說:早上電話通知的不用筆試,直接面試。然后就過去等面試了,等到別人筆試完了都沒輪到我,有點尷尬。到我之后,也沒面試多久。先問了什么時候接觸前端,為什么喜歡前端等等。

  接下來就手寫了個題: var a = {x:1}; var b = {x:1}; a == b; a === b; ,問那兩個結果?如何使之相等?

var a = {x:1};
var b = {x:1};
document.writeln(a == b);  //false
document.writeln(a === b); //false
for (let i in a) {
    if(typeof a[i] !== 'function'){
        a = i + ": " + a[i];  //不確定是不是這樣寫。。。
    }
}
for (let i in b) {
    if(typeof b[i] !== 'function'){
        b = i + ": " + b[i];
    }
}
document.writeln(a == b);  //true
document.writeln(a === b); //true

 writeln( ) 方法與 write( ) 方法幾乎一樣,差別僅在於是前者將在所提供的任何字符串后添加一個換行符。在 HTML 中,這通常只會在后面產生一個空格(多復制幾個就看出來了,少了不明顯);不過如果使用了 <PRE> 和 <XMP> 標識,這個換行符會被解釋,且在瀏覽器中顯示。

  如何遍歷?

//遍歷對象
var a = {x:1,y:2,z:3};
for (var i in a ) {
    if(typeof a[i] !== 'function') {
     document.writeln(i + ":" + a[i] );  //x:1 y:2 z:3 
    }
}
//Object.keys()  會把所有屬性名作為一個數組集合輸出
document.writeln(Object.keys(a));        //x,y,z
//Object.values() 會把所有屬性值作為一個數組集合輸出
document.writeln(Object.values(a));    //1,2,3

 

http狀態碼: 1xx 表示消息(臨時響應)  2xx 表示成功  3xx 表示重定向  4xx 表示請求錯誤  5xx 表示服務器端錯誤

  200 OK 表示請求成功,一切正常。

  301 Moved Permanently  重定向(永久移動),客戶請求的文檔在其他地方,新的URL在Location頭中給出,瀏覽器應該自動地訪問新的URL。

  302 Found  臨時重定向,類似於301,但新的URL應該被視為臨時性的替代,而不是永久性的。

  304 Not Modified  客戶端有緩沖的文檔並發出了一個條件性的請求。服務器告訴客戶,原來緩沖的文檔還可以繼續使用。

  400 Bad Request  請求出現語法錯誤。

  403 Forbidden  資源不可用。

  404 Not Found  無法找到指定位置的資源。

  405 Method Not Allowed  請求方法(GET,POST,HEAD,DELETE,PUT,TRACE等)對指定的資源不適用。

  500 Internal Server Error  服務器遇到了意料不到的情況,不能完成客戶的請求。

  501    Not Implemented  服務器不支持實現請求所需要的功能。

  503 Service Unavailable  由於臨時的服務器維護或者過載,服務器當前無法處理請求。(臨時的)

 

了解瀏覽器存儲嗎(cookie,localstorage,sessionstorage)哪個更不安全點?

  cookie安全性問題

還有什么不記得了...

 

 

下面是segmentdefault上澹台宇鵬分享的面試經驗:

  • 框架angular,有用到angular的一些什么功能
  • flex布局兼容性
  • 數組去重方法

  ES6去重

var arr = [1,1,'1','1',null,null,undefined,undefined,NaN,NaN];
var newArr = Array.from(new Set(arr));
console.log(newArr);
  • 跨域問題
  • 本地存儲,cookie安全性(問過了)
  • 怎么定義聲明一個JSON
  • 阻止冒泡中stopPropagation,preventDefault和return false區別

1.event.stopPropagation()方法

這是阻止事件的冒泡方法,不讓事件向documen上蔓延,但是默認事件任然會執行,當你掉用這個方法的時候,如果點擊一個連接,這個連接仍然會被打開,

2.event.preventDefault()方法

這是阻止默認事件的方法,調用此方法是,連接不會被打開,但是會發生冒泡,冒泡會傳遞到上一層的父元素;

3.return false  ;

這個方法比較暴力,他會同事阻止事件冒泡也會阻止默認事件;寫上此代碼,連接不會被打開,事件也不會傳遞到上一層的父元素;可以理解為return false就等於同時調用了event.stopPropagation()和event.preventDefault()

<style>
.float-box.left{
    float:left;
}
.float-box.right{
    float:right;
}
</style>

<div class="float-box">
    <div class="left">靠左邊浮動</div>
    <div class="right">靠右邊浮動</div>
</div>
<div class="bottom-box">
    <div>底部box</div>
</div>
  • 冒泡排序;數組鏈表
  • 媒體查詢;響應式布局;職業規划;什么時候接觸前端的;
  • 會問項目中某個東西具體是怎么實現的
  • 有什么問題要問我們的嗎
  • 一塊磚頭能干什么

  

  

 

 


免責聲明!

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



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