Linux的一些命令
curl : 利用URL規(guī)則在命令行下工作的文件傳輸工具融涣,強大的http命令行工具童番,支持文件的上傳和下載⊥梗基本語法? ?curl http://www.example.com? ?顯示html的內(nèi)容剃斧,(http://www.cnblogs.com/duhuo/p/5695256.html)
node事件循環(huán)機制 EventLoop
node的主線程會產(chǎn)生堆和棧,執(zhí)行棧按順序執(zhí)行任務忽你,任務清空后主線程會繼續(xù)讀取任務隊列里的任務幼东,依次執(zhí)行任務回調(diào)函數(shù)。
Javascript是單線程科雳,為異步任務提供了4個定時器根蟹,分別是:process.nextTick,? setTimeout, setInterval, setImmediate.?
process.nextTick 當執(zhí)行棧任務清空后,在讀取任務隊列之前加入糟秘,發(fā)生在所有異步隊列之前简逮。
setImmediate 被添加在任務隊列的尾部。
本輪事件循環(huán):process.nextTick, Promise(微任務microTask)
下輪事件循環(huán): setTimeout, setImmediate, setInterval
var p? = Object.create(null);
var p = {};
這2個變量的定義有什么不同蚌堵?
Object.create(null) 不繼承任何對象买决。沒有任何屬性,打印出來就是 No propertites
{} 繼承自Object吼畏,Object.prototype.hasOwnProperty.call(p, 'toString') === true
HTTP TCP/IP 協(xié)議(https://hit-alibaba.github.io/interview/basic/network/HTTP.html)
HTTP請求內(nèi)包含了哪些內(nèi)容: 請求頭督赤,狀態(tài)行,消息主體泻蚊。
請求方式:GET躲舌,POST
持久鏈接: Connection: Keep-Alive HTTP 1.1? 保持當前連接,避免了重新鏈接性雄。
會話跟蹤(URL重寫没卸,隱藏表單域,cookie秒旋,session)
CSRF攻擊:偽造用戶請求约计。防范攻擊的方法: 關(guān)鍵操作用POST請求,驗證碼迁筛,Token煤蚌,檢測Referer.
XSS 攻擊:主要是利用用戶輸入加入攻擊類腳本。防御方法: 過濾用戶輸入细卧,對輸入內(nèi)容進行escape變成普通文本尉桩。
ES6和CommonJS如何解決模塊依賴加載。
CommonJS是運行時加載贪庙,ES6是編輯時輸入接口蜘犁。
CommonJS輸出是值的拷貝,ES6輸出的值的引用止邮。