一梳猪、webpack方向 webpack優(yōu)化其實(shí)可以歸為HTTP層面的優(yōu)化(網(wǎng)絡(luò)層面)争剿。因?yàn)镠TTP這一層的優(yōu)化兩大方向就是:減少請求次數(shù)和縮短單次請求所花費(fèi)的時間。而這兩個優(yōu)...
一梳猪、webpack方向 webpack優(yōu)化其實(shí)可以歸為HTTP層面的優(yōu)化(網(wǎng)絡(luò)層面)争剿。因?yàn)镠TTP這一層的優(yōu)化兩大方向就是:減少請求次數(shù)和縮短單次請求所花費(fèi)的時間。而這兩個優(yōu)...
事件循環(huán)是瀏覽器和Node用來解決JS單線程運(yùn)行帶來的問題的一種運(yùn)行機(jī)制扶供。瀏覽器和NodeJS環(huán)境下的事件循環(huán)是不同的显晶,瀏覽器是完全遵循HTML5規(guī)范去實(shí)現(xiàn)的,NodeJS的...
用ES5實(shí)現(xiàn)繼承,就是用原型鏈實(shí)現(xiàn)往果。只要把子類和父類的原型鏈打通就解決了主要問題。最常用的是組合繼承: 1一铅、 陕贮。這句話的作用很明顯,是在Child()執(zhí)行時潘飘,當(dāng)執(zhí)行到Fath...
Object.prototype.toString()是目前JS提供的顆粒度最小的類型判斷方法,用來精確判斷數(shù)據(jù)類型卜录。如果我們把Object.prototype.toStri...
導(dǎo)讀 如果你查閱了javascript箭頭函數(shù)的資料,大抵會得出這樣的結(jié)論:1艰毒、箭頭函數(shù)最大的特點(diǎn)是沒有this筐高,如果在箭頭函數(shù)內(nèi)部使用this,則this指向函數(shù)被定義時所...
一丑瞧、為什么用靜態(tài)gzip方案柑土? 服務(wù)端動態(tài)gzip是常見的方案,即服務(wù)端判斷瀏覽器http請求頭中的Accept-Encodin是否有g(shù)zip绊汹,有的話就說明瀏覽器支持gzip...
一稽屏、導(dǎo)讀 由于各種歷史原因javaScript的類型轉(zhuǎn)換真的令人吐血。本文是老弟翻閱各種材料自己總結(jié)出的javaScript強(qiáng)制類型轉(zhuǎn)換規(guī)則灸促,整理了3張表和1個分析方法诫欠,便于...
一浴栽、導(dǎo)讀 本篇文章將說清楚javaScript的原型荒叼、原型鏈機(jī)制,說的不對評論區(qū)砸板磚~如果你看了很多篇博客仍然搞不清楚prototype 典鸡、_ _ proto _ _被廓、ne...
HTTP狀態(tài)碼詳解 1xx:信息性狀態(tài)碼,表示服務(wù)器已接收了客戶端請求萝玷,客戶端可繼續(xù)發(fā)送請求嫁乘。 100(Continue/繼續(xù)):如果服務(wù)器收到頭信息中帶有100-conti...
最近在掘金上看到一篇講解HTTP緩存的文章《前端優(yōu)化:瀏覽器緩存技術(shù)介紹》,我覺得講得很好球碉,如果大家不熟悉HTTP緩存的話可以先看下這篇博客蜓斧,很多細(xì)節(jié)都講的很具體,向博主學(xué)習(xí)...
NextTick微任務(wù)永遠(yuǎn)在Promise微任務(wù)之前執(zhí)行睁冬,而且除了Promise挎春,NextTick微任務(wù)永遠(yuǎn)比其他所有微任務(wù)都要優(yōu)先。
個人認(rèn)為是有意義的設(shè)計:NextTick就像一個鉤子一樣,在宏任務(wù)執(zhí)行后直奋、微任務(wù)執(zhí)行前觸發(fā)(宏任務(wù)->NextTick->微任務(wù))能庆。試想一下,如果NextTick和promise優(yōu)先級都一樣脚线,你有一個Foo方法希望它在宏任務(wù)執(zhí)行完之后執(zhí)行搁胆,那么就必須保證代碼里NextTick的定義要寫在所有的promise之前,并且讓所有promise走到then的時間要晚于NextTick邮绿,但這是不可能的(也許能辦到渠旁,但是就失去了用promise的意義),所以要固定NextTick的順序來支持你的這個‘希望’船逮。
圖解JavaScript事件循環(huán)一死、執(zhí)行棧、任務(wù)隊(duì)列傻唾、宏任務(wù)、微任務(wù)事件循環(huán)就是Event Loop承耿,是JavaScript 一個特殊的地方冠骄。特殊就在于JavaScript 是單線程語言,注定了對異步操作的處理有別于多線程語言加袋。執(zhí)行棧和任務(wù)隊(duì)...
首先個人認(rèn)為“執(zhí)行棧 =》 宏任務(wù) =》 微任務(wù)”這種描述方式不是太準(zhǔn)確凛辣,有種把執(zhí)行棧當(dāng)做一個任務(wù)來看待的錯覺。執(zhí)行椫吧眨可以看做是游標(biāo)扁誓。
1、如果執(zhí)行棧當(dāng)前執(zhí)行完的是宏任務(wù)蚀之,那么接下去就要執(zhí)行微任務(wù)蝗敢,所以你看起來是“執(zhí)行棧 =》 宏任務(wù) =》 微任務(wù)”;
2足删、如果執(zhí)行棧當(dāng)前執(zhí)行完的是微任務(wù)寿谴,那么接下去會執(zhí)行下一個微任務(wù),如果不存在下一個微任務(wù)的話失受,那么接下去就要執(zhí)行宏任務(wù)讶泰,所以你看起來是“執(zhí)行棧 =》 微任務(wù) =》 宏任務(wù)”。
圖解JavaScript事件循環(huán)拂到、執(zhí)行棧痪署、任務(wù)隊(duì)列、宏任務(wù)兄旬、微任務(wù)事件循環(huán)就是Event Loop狼犯,是JavaScript 一個特殊的地方。特殊就在于JavaScript 是單線程語言,注定了對異步操作的處理有別于多線程語言辜王。執(zhí)行棧和任務(wù)隊(duì)...
使用vue雙向綁定的時候劈狐,有時候會遇到?jīng)]有檢測到數(shù)據(jù)變化的情況,以下情況呐馆,是需要在平常工作和使用中注意的問題 數(shù)組盲區(qū) vue包含一組觀察數(shù)組變異的方法肥缔,使用這些方法也會觸發(fā)...
單向綁定非常簡單续膳,就是把Model綁定到View,當(dāng)我們用JavaScript代碼更新Model時收班,View就會自動更新坟岔。有單向綁定,就有雙向綁定摔桦。如果用戶更新了View社付,M...
對大部分人來說,掌握Vue.js基本的幾個API后就已經(jīng)能夠正常地開發(fā)前端網(wǎng)站邻耕。但如果你想更加高效地使用Vue來開發(fā)鸥咖,成為Vue.js大師,那下面我要傳授的這五招你一定得認(rèn)真...
javaScript原型和原型鏈的詳細(xì)介紹網(wǎng)上已經(jīng)有很多大神文章介紹過兄世,本篇不打算再講原理啼辣。如果朋友您已經(jīng)理解了原型、原型鏈興許這邊文章能起到一點(diǎn)點(diǎn)作用御滩。說實(shí)在的我在實(shí)際工作...
事件循環(huán)就是Event Loop,是JavaScript 一個特殊的地方氛驮。特殊就在于JavaScript 是單線程語言舆声,注定了對異步操作的處理有別于多線程語言。執(zhí)行棧和任務(wù)隊(duì)...
Flex彈性布局柳爽,將是未來布局的首選媳握,幾乎所有的瀏覽器都已支持。 傳統(tǒng)的盒模型display+position+float方案針對一些特殊的布局較考驗(yàn)程序員的功力磷脯,比如垂直居...