From 20d513f0a308fdaf7620501abcb70c06bbaa2dcd Mon Sep 17 00:00:00 2001 From: fengmk2 Date: Sat, 16 May 2015 22:20:57 +0800 Subject: [PATCH] Optimization killers see https://github.com/petkaantonov/bluebird/wiki/Optimization-killers#3-managing-arguments --- index.js | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/index.js b/index.js index af669ee..8a2c7a5 100644 --- a/index.js +++ b/index.js @@ -73,6 +73,7 @@ module.exports = function (app, options) { } // for performance reason + // https://github.com/petkaantonov/bluebird/wiki/Optimization-killers#3-managing-arguments if (arguments.length === 1) { // __(key) return text; @@ -103,8 +104,11 @@ module.exports = function (app, options) { } // __(key, value1, value2, value3, value4, value5, ...) - var args = Array.prototype.slice.call(arguments, 1); - args.unshift(text); + var args = new Array(arguments.length); + args[0] = text; + for(var i = 1; i < args.length; i++) { + args[i] = arguments[i]; + } return util.format.apply(util, args); };