add(1)(2)(3)累加

简介: add(1)(2)(3)累加

一般大家看到的 add(1)(2)(3) 这种,大家看到的大部分都是

function add(x) {
    var sum = x;
    var fn = function (y) {
        sum = sum + y;
        return fn;
    };
    
    // 一般 toString 和 valueOf 只写一个
    fn.toString = ()=>{
        return sum
    };
    fn.valueOf = ()=>{
        return sum
    };
    return fn;
}
console.log(add(1)(2)(3));  //6

告诉你输出 6,其实打印出来的是:[Function: fn] { toString: [Function], valueOf: [Function] }

这是就涉及到一个toString和valueOf的调用问题,这里大家自行百度!

我告诉你怎么打印出6

console.log(add(1)(2)(3)+'');  //6
console.log(+add(1)(2)(3));  //6
console.log(add(1)(2)(3).valueOf());  //6
console.log(add(1)(2)(3).toString());  //6

至于为啥这样就能打印!大家自行研究啊,哈哈哈

相关文章
|
6月前
|
JavaScript
Js,定义数组的方法,let 数组名 = [数据1,数据2,........,数据n],取值方法,数组名[x],arr[0],let sum sum = sum + arr[0],求和的写法,平均值
Js,定义数组的方法,let 数组名 = [数据1,数据2,........,数据n],取值方法,数组名[x],arr[0],let sum sum = sum + arr[0],求和的写法,平均值
|
8月前
add函数
【2月更文挑战第23天】add函数。
58 3
LeetCode 167 Two Sum II - Input array is sorted(输入已排序数组,求其中两个数的和等于给定的数)
给定一个有序数组和一个目标值 找出数组中两个成员,两者之和为目标值,并顺序输出
92 0
|
JavaScript
js:Array.reduce累加计算、合并数组
js:Array.reduce累加计算、合并数组
349 0
js:Array.reduce累加计算、合并数组
|
Java
Foreach循环中为什么不要进行remove/add操作
Foreach循环中为什么不要进行remove/add操作
126 0