gpt4 book ai didi

javascript - 调用带有多个闭包的 javascript 函数

转载 作者:行者123 更新时间:2023-11-28 15:10:41 25 4
gpt4 key购买 nike

    function sum(a) {
var sum = a
function f(b) {
sum += b
return f
}

f.toString = function () { return sum }
return f
}
var a = sum(0)(1)(2)(3)(4)(5);

有人可以向我解释一下这段代码是如何工作的吗?我真的不知道如何以这种方式调用具有多个闭包的函数。为什么当我在浏览器控制台中打印 a 时,结果是“function 15”而不仅仅是 15

最佳答案

And why when i print a in the browsers console the result is "function 15" and not just 15

要获得最终结果,您应该调用toString函数。此闭包将保存总和,直到您调用 toString 函数为止。

function sum(a) {
var sum = a

function f(b) {
sum += b
return f
}

f.toString = function() {
return sum;
}
return f
}

var a = sum(0)(1)(2)(3)(4)(5);

document.write(a.toString());

关于javascript - 调用带有多个闭包的 javascript 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36603977/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com