在JavaScript中只使用表达式/无语句会有性能下降吗?

时间:2012-12-16 13:17:08

标签: javascript performance expression code-translation

我正在努力将大量特定语言的代码翻译成JavaScript。如果我把所有内容都翻译为表达式而没有语句,那么我的工作会轻松得多例如,而不是

f = function(a,b){
    console.log(a);
    console.log(b);
    if (a>5)
        return a+b;
    else
        return a*b;
};
console.log(f(2,2));

我会:

f = function(a,b){
    return console.log(a), console.log(b), (a>5?a+b:a*b);
};

除了我担心较少类似人类的代码可能会更糟糕。这种担心有效吗?

注意:代码在任何一种方式都不可读。

2 个答案:

答案 0 :(得分:1)

  

除了我担心可能会有类似人类的代码   优化更糟糕。这种担心有效吗?

简而言之,不。我选择未来的维护是你对执行速度的关注。如果未来的程序员没有遇到过(a> b?a:b;),他们会很快发现它,并且可能会感谢你提供更简洁的代码。

同样,我会更关心你给出的回归功能。我承认我只是拿起js(Java背景),但是

return console.log(a), console.log(b), (a>5?a+b:a*b);

它不如

直观
console.log(a); console.log(b); return (a>5?a+b:a*b);

答案 1 :(得分:0)

我个人会选择这个

var f = function(a, b){
    console.log(a);
    console.log(b);
    return ( a > 5 ? a + b : a * b);
};

在客户端使用它会将文件大小减少几个字节