学海无涯,回头是岸
不务正业
极简老人

如果遇到一个试题是这样。

function sum(arr){
        //求和    
}

你会怎么做?

反正我第一反应是这样做。

function sum(arr){
            var result = 0;
            for(var i in arr){
                result += arr[i];
            }
            return result;
        }

然而直到昨天我才发现大神的另一种极简做法。

function sum(arr) {
            return eval(arr.join('+'));
        }

一句话OK,是不是很厉害。

简单解读下。

join函数就不用解释吧,拼接字符串。这里用join把传入的数组拼接成用“+”号连接的字符串。然后用eval函数计算拼接后的字符串。

这样做极大的节省了内存,且在计算时间大大缩短。

posted on 2016-06-03 23:40  MirageFireFox  阅读(415)  评论(0)    收藏  举报