JavaScript多种调用函数的方法

时间:2014-10-09 18:03:48

标签: javascript function

  

编写一个计算a + b的JavaScript函数。该   必须能够以两种不同的方式调用函数:

calculate(a, b);

calculate(a)(b);

1 个答案:

答案 0 :(得分:-4)

以下是我想出的解决这个问题的代码。请随时询问有关其工作原理或可采取哪些措施来改进它的问题。

var calculate = function () {
    var arg1 = arguments[0];
    if (arguments.length === 2) {
        return arg1 + arguments[1];
    }
    if (arguments.length === 1) {
        return function (secondNum) {
            return secondNum + arg1;
        }
    }

}

正如您所看到的,此功能中有一些概念在起作用。 arguments数组在任何JavaScript函数中都可用。它允许您检查传递给函数的所有参数。正如你所看到的,我首先检查我们是否有2个参数,这可以让我知道我应该将它们加在一起。

在第二种情况下,我只有一个参数,所以我将返回一个函数来帮助我完成函数(x)(y)的情况。