第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

優(yōu)化這個用于統(tǒng)計字母出現(xiàn)次數(shù)的函數(shù),看看你優(yōu)化后的函數(shù)需要耗時幾毫秒?

優(yōu)化這個用于統(tǒng)計字母出現(xiàn)次數(shù)的函數(shù),看看你優(yōu)化后的函數(shù)需要耗時幾毫秒?

牧羊人nacy 2019-03-06 14:15:11
某前端群里出了一個題目:封裝一個charStat函數(shù)用于統(tǒng)計給定網(wǎng)址中html源代碼中a-z字母(不區(qū)分大小寫)出現(xiàn)的次數(shù),函數(shù)返回Promise并resolve這樣一個對象:key為a-z(不可亂序)、value為對應(yīng)字母出現(xiàn)次數(shù)。為了排除掉網(wǎng)絡(luò)請求耗時影響,所以我們只優(yōu)化console.time('ms')與console.timeEnd('ms')之間的代碼,保證結(jié)果正確的前提下,通過比較輸出結(jié)果中的ms:后的數(shù)值大小來評價優(yōu)化結(jié)果。執(zhí)行多次,平均輸出大于50ms為E(不及格),在50ms內(nèi)評分為D等級方案,40ms內(nèi)為C,30ms內(nèi)為B,20ms內(nèi)為A,10ms左右算終極方案了以下是我的代碼,通過String.prototype.replace實現(xiàn),雖然比較精簡但耗時較長(98.593ms),并且不及格?。?!const fetch = require('isomorphic-fetch')function charStat (url) {  return fetch(url)    .then( response => response.text())    .then( html => {      console.time('ms')            // 聲明一個對象_c,并初始化key為 a-z,value 均為0      let _c = {}, _range = ['a'.charCodeAt(), 'z'.charCodeAt()]      for(let i = _range[0]; i <= _range[1]; i ++){        _c[String.fromCharCode(i)] = 0      }      // 以下是我覺得重點需要優(yōu)化的部分      html.replace(/[a-z]/ig, i => _c[i.toLowerCase()] ++)            console.timeEnd('ms')      return _c    })}charStat('http://www.sina.com.cn/').then(result => console.log(result))輸出:ms: 98.593ms{ a: 26200,  b: 6756,  c: 14579,  d: 10298,  e: 19402,  f: 6689,  g: 6065,  h: 9945,  i: 19735,  j: 1633,  k: 5128,  l: 16053,  m: 8322,  n: 17747,  o: 12169,  p: 8371,  q: 524,  r: 13153,  s: 18301,  t: 22605,  u: 5883,  v: 4111,  w: 4042,  x: 2013,  y: 3381,  z: 575 }
查看完整描述

4 回答

  • 4 回答
  • 0 關(guān)注
  • 500 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號