※ 本文為 tomin 轉寄自 tomin.twbbs.org 更新時間: 2012-04-28 22:27:52
看板 coding
作者 標題 javascript benchmark (js效能測試 on creating function)
時間 2012/03/11 Sun 20:10:56
看板 Web_Design
作者 標題 Re: javascript benchmark (js效能測試 on creating function)
時間 Sun Mar 11 20:05:57 2012
※ 引述《tonytonyjan (南洋大兜蟲)》之銘言:
: 想請問這兩個寫法對於記憶體或效能影響什麼差別嗎?
: // Example 1
: for(i=0;i<1000000000;i++){
: x = function(){alert()} // 是否會產生一堆的 function object?
: }
: // Example 2
: function f(){alert()}
: for(i=0;i<1000000000;i++){
: x = f // 這個我確定只會有一個 function
: }
記憶體我不知道 不過效能我測出來了
前者比較快 比後者快2.5倍
測試來源:
http://jsperf.com/inital-function
http://jsfiddle.net/xKvu2/
原因我不清楚 也許將一個變數綁定並reference至一個function很花成本?
另外我有個問題 後者有function call好像特別難測?
像以下這兩個版本 都無法正確測試後者實際執行的時間
http://jsfiddle.net/GFue7/
http://jsfiddle.net/hzm97/
我想將測試code寫得通用、簡潔、漂亮一點 以後可當lib用
或是有那個lib還不錯用?
--
◤◥ Origin: Loess Plateau˙黃土高原 tomin.twbbs.org
◣◢ Author: tomin 從 114-24-41-89.dynamic.hinet.net 發表
--
※ 看板: tomin 文章推薦值: 0 目前人氣: 0 累積人氣: 32
回列表(←)
分享