成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

一些當(dāng)前 Node.js 中最流行 ES6 特性的 benchmark (V8 / Chakra)

ZHAO_ / 1467人閱讀

摘要:前言項(xiàng)目地址如果有想要增加的特性,歡迎更新,然后。環(huán)境大致結(jié)論許多情況下下的特性表現(xiàn)相對更好。

前言

項(xiàng)目 github 地址:https://github.com/DavidCai1993/ES6-benchmark

如果有想要增加的特性 benchmark ,歡迎更新benchmarks/ ,然后 PR 。

環(huán)境

CPU: Intel Core(TM) i5-2410M 2.30GHz

Memory: 8GB 1600 MHz DDR3

Node.js: 5.9.0 / Node-chakracore 6.0.0-pre5

大致結(jié)論

許多情況下: V8 ES5 >> Chakra ES6 > Chakra ES5 > V8 ES6

Chakra 下的 ES6 特性表現(xiàn)相對更好。

Benchmark

concat-strings.js

V8:
template string vs use +
  14,643,602 op/s ? ${a}$
  96,959,110 op/s ? a + b

Chakra:
template string vs use +
  35,756,501 op/s ? ${a}$
  19,995,366 op/s ? a + b

for-of-for-loop.js

V8:
for...of vs for loop
  851,761 op/s    ? for...of
  12,507,823 op/s ? for loop, i < arr.length

Chakra:
for...of vs for loop
  1,133,193 op/s  ? for...of
  16,715,320 op/s ? for loop, i < arr.length

merge-objects.js

V8:
merge objects
  669,921 op/s    ? Object.assign
  23,625,182 op/s ? for...in loop and assign

Chakra:
merge objects
  3,102,889 op/s  ? Object.assign
  3,744,837 op/s  ? for...in loop and assign

declear-class.js

V8:
declear a class
  118,864 op/s ? Class
  153,662 op/s ? use function and prototype

Chakra:
declear a class
  560,705 op/s ? Class
  701,991 op/s ? use function and prototype

repeat-string.js

V8:
string.repeat() vs use +
  8,828,842 op/s   ? string.repeat()
  107,824,137 op/s ? use +

Chakra:
string.repeat() vs use +
  13,022,259 op/s  ? string.repeat()
  3,328,631 op/s   ? use +

array-like-to-array.js

V8:
array like object to array
  1,302,649 op/s ? Array.from
  540,458 op/s   ? Array.prototype.slice.call

Chakra:
array like object to array
  1,864,649 op/s ? Array.from
  2,537,458 op/s   ? Array.prototype.slice.call

promise-bluebird.js

promise vs bluebird
V8:
  322,534 op/s   ? promise
  1,763,186 op/s ? bluebird

Chakra:
  69,534 op/s   ? promise
  178,186 op/s ? bluebird

var-let-const.js

V8:
var let const
  134,028,614 op/s ? let
  129,193,000 op/s ? const
  431,460,321 op/s ? var

Chakra:
var let const
  156,028,614 op/s ? let
  170,193,000 op/s ? const
  150,460,321 op/s ? var

string-start-with.js

V8:
string starts with
  9,774,987 op/s  ? string.startsWith(value)
  74,127,611 op/s ? string[0] === value

Chakra:
string starts with
  26,774,987 op/s ? string.startsWith(value)
  47,127,611 op/s ? string[0] === value

define-a-funciton-with-this.js

V8:
define a function with inherited this
  59,661,143 op/s ? () =>
  64,874,220 op/s ? function statement

Chakra:
define a function with inherited this
  69,661,143 op/s ? () =>
  69,874,220 op/s ? function statement

parse-int.js

V8:
global.parseInt() vs Number.parseInt()
  53,940,634 op/s  ? Number.parseInt()
  81,509,873 op/s  ? global.parseInt()

Chakra:
global.parseInt() vs Number.parseInt()
  16,940,634 op/s  ? Number.parseInt()
  19,509,873 op/s  ? global.parseInt()

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/78967.html

相關(guān)文章

  • String.prototype.repeat在V8Chakra實(shí)現(xiàn)

    摘要:作者源地址最近一個事件搞得圈沸沸揚(yáng)揚(yáng)的我們暫且把這個事情放一邊來看看本身的實(shí)現(xiàn)的源碼如下這段程序的作用是給一個字符串或可以轉(zhuǎn)成的變量用字符在左邊補(bǔ)位將其補(bǔ)到長度為當(dāng)然這個程序沒做充足的參數(shù)檢查這個就不細(xì)說了我們分析一下它的效率如果 作者: @flowmemo源地址: http://flowmemo.github.io/2016/03/25/str... 最近一個left-pad事件搞得...

    wushuiyong 評論0 收藏0
  • 前端每周清單半年盤點(diǎn)之 JavaScript 篇

    摘要:前端每周清單專注前端領(lǐng)域內(nèi)容,以對外文資料的搜集為主,幫助開發(fā)者了解一周前端熱點(diǎn)分為新聞熱點(diǎn)開發(fā)教程工程實(shí)踐深度閱讀開源項(xiàng)目巔峰人生等欄目。背后的故事本文是對于年之間世界發(fā)生的大事件的詳細(xì)介紹,闡述了從提出到角力到流產(chǎn)的前世今生。 前端每周清單專注前端領(lǐng)域內(nèi)容,以對外文資料的搜集為主,幫助開發(fā)者了解一周前端熱點(diǎn);分為新聞熱點(diǎn)、開發(fā)教程、工程實(shí)踐、深度閱讀、開源項(xiàng)目、巔峰人生等欄目。歡迎...

    Vixb 評論0 收藏0
  • JavaScript 工作原理之二-如何在 V8 引擎中書寫最優(yōu)代碼 5 條小技巧(譯)

    摘要:本章將會深入谷歌引擎的內(nèi)部結(jié)構(gòu)。一個引擎可以用標(biāo)準(zhǔn)解釋程序或者即時編譯器來實(shí)現(xiàn),即時編譯器即以某種形式把解釋為字節(jié)碼。引擎的由來引擎是由谷歌開源并以語言編寫。注意到?jīng)]有使用中間字節(jié)碼來表示,這樣就不需要解釋器了。 原文請查閱這里,略有刪減。 本系列持續(xù)更新中,Github 地址請查閱這里。 這是 JavaScript 工作原理的第二章。 本章將會深入谷歌 V8 引擎的內(nèi)部結(jié)構(gòu)。我們也會...

    PingCAP 評論0 收藏0
  • JavaScript深入淺出第4課:V8引擎是如何工作?

    摘要:摘要性能彪悍的引擎。深入淺出系列深入淺出第課箭頭函數(shù)中的究竟是什么鬼深入淺出第課函數(shù)是一等公民是什么意思呢深入淺出第課什么是垃圾回收算法深入淺出第課是如何工作的最近,生態(tài)系統(tǒng)又多了個非常硬核的項(xiàng)目。 摘要: 性能彪悍的V8引擎。 《JavaScript深入淺出》系列: JavaScript深入淺出第1課:箭頭函數(shù)中的this究竟是什么鬼? JavaScript深入淺出第2課:函數(shù)是一...

    hsluoyz 評論0 收藏0
  • JavaScript如何工作:V8引擎深入探究 + 優(yōu)化代碼5個技巧(譯文)

    摘要:引擎可以是一個標(biāo)準(zhǔn)的解釋器,也可以是一個將編譯成某種形式的字節(jié)碼的即時編譯器。和其他引擎最主要的差別在于,不會生成任何字節(jié)碼或是中間代碼。不使用中間字節(jié)碼的表示方式,就沒有必要用解釋器了。 原文地址:https://blog.sessionstack.com... showImg(https://segmentfault.com/img/bVVwZ8?w=395&h=395); 數(shù)周之...

    William_Sang 評論0 收藏0

發(fā)表評論

0條評論

ZHAO_

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<