当前位置:网站首页>Handwriting Currying - toString Comprehension
Handwriting Currying - toString Comprehension
2022-08-05 09:32:00 【InfoQ】
let arr = []
function addCurry() {
let arg = Array.prototype.slice.call(arguments); // Collect parameters
arr = arr.concat(arg);
if (arg.length === 0) { //If the parameter is empty, judge the end of the recursion
return arr.reduce((a,b)=>{return a+b}) // Summation
} else {
return addCurry;
}
}
addCurry(1)(2)(3)() // 6
Array.prototype.slice.call(arguments)arrreduce()addCurry(1)(2)(3)() // 6
addCurry(1)() // 7
function addCurry() {
let arr = [...arguments]
let fn = function () {
if(arguments.length === 0) {
return arr.reduce((a, b) => a + b)
} else {
arr.push(...arguments)
return fn
}
}
return fn
}
addCurry(1)(2)(3)
//or
addCurry(1)(2,3)
toStringlet fn = function(){}
fn.toString = () => 1
fn == 1 // true
function addCurry() {
let arr = [...arguments]
// Use closures to collect all parameter values
varfn = function() {
arr.push(...arguments);
return fn;
};
//Using toString implicit conversion
fn.toString = function () {
return arr.reduce(function (a, b) {
return a + b;
});
}
return fn;
}
addCurry(1)(2)(3) == 6 // true
边栏推荐
- tensorflow.keras cannot introduce layers
- 21 Days of Deep Learning - Convolutional Neural Networks (CNN): Clothing Image Classification (Day 3)
- 如何实现按键的短按、长按检测?
- js graphics operation one (compatible with pc, mobile terminal to achieve draggable attribute drag and drop effect)
- 线程之Happens-before规则
- 欧盟 | 地平线 2020 ENSEMBLE:D2.13 SOTIF Safety Concept(上)
- Marketing Suggestions | You have an August marketing calendar to check! Suggest a collection!
- 施一公:科学需要想象,想象来自阅读
- leetcode: 529. Minesweeper Game
- 【ASM】字节码操作 方法的初始化 Frame
猜你喜欢
随机推荐
leetcode 剑指 Offer 10- I. 斐波那契数列
上海控安技术成果入选市经信委《2021年上海市网络安全产业创新攻关成果目录》
Qiu Jun, CEO of Eggplant Technology: Focus on users and make products that users really need
Does flink cdc support synchronization from oracle dg library?
阿里云存储的数据库是怎么自动加快加载速度的呢www.cxsdkt.cn怎么设置案例?
Egg framework usage (1)
汇编语言(8)x86内联汇编
Dry goods!Generative Model Evaluation and Diagnosis
Bias lock/light lock/heavy lock lock is healthier. How is locking and unlocking accomplished?
Undefined symbols for architecture arm64解决方案
tensorflow.keras无法引入layers
egg框架使用(一)
Science bosses say | Hong Kong rhubarb KaiBin teacher take you unlock the relationship between the matrix and 6 g
IO流篇 -- 基于io流实现文件夹拷贝(拷贝子文件夹及子文件夹内文件)满满的干货
七夕浪漫约会不加班,RPA机器人帮你搞定工作
哪位大佬有20年4月或者1月的11G GI和ojvm补丁呀,帮忙发下?
科普大佬说 | 港大黄凯斌老师带你解锁黑客帝国与6G的关系
C语言的高级用法
无题十
21 Days of Deep Learning - Convolutional Neural Networks (CNN): Weather Recognition (Day 5)








