一道柯里化面試題

2021-09-13 20:16:51 字數 867 閱讀 2841

這是一道朋友在群裡發的一道題,我之前不是很懂柯里化,就自己試著寫了一下,不知道算不算柯里化,望指教~

下面是題目:

function curry() 

******************************==

//寫好之後一下**可以正常執行輸入正確

function add(a, b, c)

let addex = curry(add);

console.log(addex(1,2,3) === 6);

console.log(addex(1,2)(3) === 6);

console.log(addex(1)(2,3) ===6);

console.log(addex(1)(2)(3)===6);

function multi(a, b, c, d)

const multiex = curry(multi)

console.log(multiex(2, 3, 4, 5) === 120) //=>true

console.log(multiex(2, 3, 4)(5) === 120) //=>true

console.log(multiex(2, 3)(4, 5) === 120) //=>true

console.log(multiex(2)(3)(4)(5) === 120) //=>true

我自己的**:
function curry(fn)  else }}

return getcurry()

}

我用到了以下知識點:

擴充套件運算子傳參和擴充套件運算子相關的陣列操作。

由於是連環呼叫函式,我用所有呼叫函式的引數個數來判斷。

一道面試題

一道面試題 射擊運動員10發打中90環有多少種可能,請編寫程式計算出來,並列印出結果,0環和10環均有效。打中90環就是沒打中10環,所以打中90環跟打中10環的可能性是一樣的。然後開始遞迴狂打槍,一到10就記錄 if params i 10 在迴圈的控制中已經排除了大於10的可能性 i 10 pa...

一道面試題

前些時候在找工作,就在準備結束此次找工作歷程的時候,去了一家公司面試,去了之後技術經理直接帶到一台電腦旁,給了一張紙條,上面是這樣的題目 用c或c 來實現 1 建立一棵樹,該樹的深度是隨機的,每個節點的位元組點數是隨機的。2 給每個節點分配一段隨機大小的記憶體空間,給每個節點賦乙個隨機數。3 遍歷這...

一道面試題

如果n為偶數,則將它除以2,如果n為奇數,則將它加1或者減1。問對於乙個給定的n,怎樣才能用最少的步驟將它變到1。例如 n 61 n 60 n 2 30 n 2 15 n 16 n 2 8 n 2 4 n 2 2 n 2 1 public class myclass public static vo...