零散點總結

  • 一句話說明rem和em的區別

二者都是轉化到px, 區別在於rem是根據根元素的字體大小去轉化( 此字體大小會被瀏覽器中字體大小的設置影響,除非顯式重寫一個具體單位),如html元素設爲16px,  css設置10rem就是160px; em是根據使用em的元素的字體大小(此字體大小受從父元素繼承過來的字體大小,除非顯式重寫與一個具體單位), 如爲16px, 10em就是160px。css

 

  • 快速刪除node_modules

手動刪除一般會遇到文件名過長的狀況,一層一層的將文件名改短雖可行確毫無效率。根據官方提供的方法, 只需兩步,終身無憂:html

npm install rimraf -g
rimraf node_modules

  • 最簡單的數組去重方法
function merge(arr) {
    if(!Array.isArray(arr) | arr.length == 0) {
        return []
    }

     var res = [];
     for(var i=0;i<arr.length;i++) {
           if(res.indexOf(arr[i]) == -1){
                res.push(arr[i])
} } return res; }
  • ES6數組去重方法

     [...new Set([2,2,2,4,5,4])]   // [2,4,5]node

 

  • 異步加載方式: async, defer, 動態腳本建立

     defer是在HTML解析完以後纔會執行,若是是多個,按照加載的順序依次執行nginx

     async是在加載完以後當即執行,若是是多個,執行順序和加載順序無關web

 

  • 大型web應用對速度的追求並無止步於僅僅利用瀏覽器的緩存,由於瀏覽器緩存始終只是爲了提高二次訪問的速度,對於首次訪問的加速,咱們須要從網絡層面進行優化,最多見的手段就是CDN(Content delivery Network)內容分發網絡加速。經過將靜態資源(如js css 圖片等)緩存到離用戶很近的相同網絡運營商的CDN節點上,不但能提高用戶的訪問速度,還能節省服務器的寬帶消耗,下降負載。

 

  • 移動端引入fastclick後, 只要雙擊 chrome就報錯 
  • 這是由於Chrome及其內核瀏覽器更新了一項新特性,原先只會報黃色等級的錯誤,如今升到紅色了,爲了流暢度 。click事件在移動端有個300ms延時,就是由於避免和手機雙擊行爲發生衝突。能夠經過設置 touch-action:manipulation(表示瀏覽器只容許進行滾動和持續縮放操做,相似雙擊縮放這種非標準操做就不能夠)拒絕雙擊行爲,則顯然,300ms延時就不復存在,所以,html {touch-action: manipulation;}聲明能夠用來避免瀏覽器300ms延時問題。
相關文章
相關標籤/搜索