1. 程式人生 > >第一次電話面試總結

第一次電話面試總結

第一次電話面試在毫無徵兆下到來,感覺自己做的不是很好吧,有點虛,所以,特意寫一篇部落格來記錄其中遇到的問題

1當在瀏覽器中輸入url時,後面一系列發生了什麼行為

答:導航的第一步是通過訪問的域名找出其IP地址,DNS查詢過程 

1 瀏覽器的快取 系統快取,ISP DNS快取

2瀏覽器解析url獲取協議 主機 埠 path

3瀏覽器組裝成一個http (get) 請求報文

4 瀏覽器獲取主機ip地址 過程如下

瀏覽器快取 本機快取 hosts快取 路由器快取等

dns地櫃查詢

5開啟一個socket 與目標IP地址 埠簡歷TCP連結 3次握手

6 TCP連線建立後傳送http請求

7伺服器接受請求並解析 將請求轉發到服務程式 

9伺服器檢查http請求頭是否包含快取等驗證資訊

伺服器將響應報文通過TCP連結發回瀏覽器 

10瀏覽器接受http 響應 通過4次握手 關閉TCP連結

11 瀏覽器解析成DOM樹 大致就是如此

具體可看如下http://www.qdfuns.com/notes/16842/88908c6bd93eaa881bb0fdc087ef67e0.html

二 js的繼承 js中的每個型別實際上都是一種物件 js可以通過原型鏈來進行繼承

function Person(name,sex){
    this.name = name;
    this.sex = sex;
    
}
Person.prototype = {
    getName:function () {
        return this.name;
    },
    getSex:function () {
        return this.sex;
    }
}
具體可看這裡

http://www.cnblogs.com/sanshi/archive/2009/07/08/1519036.html

三 跨域的幾種處理方法

1 在主域相同的時候

document.domain + iframe

2.動態建立script

3.location.hash + iframe

4.window.name + iframe

5.postMessage

6.CORS背後的思想 就是使用自定義的HTTP頭部讓瀏覽器與伺服器進行通訊 從而決定請求或是響應是否應該成功 還是應該失敗

7.JSONP包含兩部分:回撥函式和資料

websocket 瀏覽器API 

8 http://www.ruanyifeng.com/blog/2009/08/learning_javascript_closures.html 閉包的作用 實際上就是函式裡面巢狀函式