撩課-Web大前端天天5道面試題-Day32

1.module、export、import是什麼,有什麼做用?

module、export、import是ES6用來統一前端模塊化方案的設計思路和實現方案。
export、import的出現統一了前端模塊化的實現方案,
整合規範了瀏覽器/服務端的模塊化方法,
用來取代傳統的AMD/CMD、requireJS、seaJS、commondJS
等等一系列前端模塊不一樣的實現方案,使前端模塊化更加統一規範,
JS也能更加能實現大型的應用程序開發。
import引入的模塊是靜態加載(編譯階段加載)而不是動態加載(運行時加載)。
import引入export導出的接口值是動態綁定關係,
即經過該接口,能夠取到模塊內部實時的值

複製代碼

2.平常前端代碼開發中,有哪些值得用ES6去改進的編程優化或者規範?

經常使用箭頭函數來取代var self = this;的作法。
經常使用let取代var命令。
經常使用數組/對象的結構賦值來命名變量,
結構更清晰,語義更明確,可讀性更好。
在長字符串多變量組合場合,
用模板字符串來取代字符串累加,
能取得更好地效果和閱讀體驗。
用Class類取代傳統的構造函數,來生成實例化對象。
在大型應用開發中,
要保持module模塊化開發思惟,
分清模塊之間的關係,經常使用import、export方法。

複製代碼

3.請你談談Cookie的弊端?

cookie雖然在持久保存客戶端數據提供了方便,
分擔了服務器存儲的負擔,但仍是有不少侷限性的

第一:每一個特定的域名下最多生成20個cookie

1.IE6或更低版本最多20個cookie

2.IE7和以後的版本最後能夠有50個cookie。

3.Firefox最多50個cookie

4.chrome和Safari沒有作硬性限制

複製代碼

4.git fetch和git pull的區別?

git pull:
至關因而從遠程獲取最新版本並merge到本地
git fetch:
至關因而從遠程獲取最新版本到本地,不會自動merge

複製代碼

5.svn與git的區別?

git是分佈式的,svn不是。

git跟svn同樣有本身的集中式版本庫或服務器。
但git更傾向於被使用於分佈式模式,
克隆版本庫後即便沒有網絡也可以commit文件,
查看歷史版本記錄,建立項目分支等,
等網絡再次鏈接上Push到服務器端。

git把內容按元數據方式存儲,而svn是按文件。
全部的資源控制系統都是把文件的元信息隱藏在一個相似.svn,.cvs等的文件夾裏。
git目錄是處於你的機器上的一個克隆版的版本庫,
它擁有中心版本庫上全部的東西,
例如標籤,分支,版本記錄等。

git沒有一個全局的版本號,svn有。

git的內容完整性優於svn。
由於git的內容存儲使用的是SHA-1哈希算法。

git能夠有無限個版本庫,svn只能有一個指定中央版本庫。
當svn中央版本庫有問題時,
全部工做成員都一塊兒癱瘓直到版本庫維修完畢或者新的版本庫設立完成。
每個git都是一個版本庫,
區別是它們是否擁有活躍目錄(Git Working Tree)。

若是主要版本庫(例如:置於GitHub的版本庫)有問題,
工做成員仍然能夠在本身的本地版本庫(local repository)提交,
等待主要版本庫恢復便可。工做成員也能夠提交到其餘的版本庫!

複製代碼
相關文章
相關標籤/搜索