取得所有的組合再求結果
使用情境 資料中任二組(或以上)符合某個條件 例如: 想找 [1,2,3,4,5] 任二個值「大於」3有哪些情況 二組資料的「所有組合」想找符合條件的結果 例如: [1,2,3,4] 和 [7,8.9] 的組合中那個「乘」大於 10 上面的情況在整理資料中蠻常發現的,所以手上有這個函數是蠻方便的,也不太需要自已去造輪子刻,拿來用就好了。 這種會分二種情況:第一種是自已資料的展開,第二種是給二個資料組合展開。 Combination const choose = (n, xs) => n < 1 || n > xs .length ? [] : n == 1 ? [...xs .map (x => [x])] : [ ...choose (n - 1, xs .slice (1)) .map (ys => [xs [0], ...ys]), ...choose (n , xs .slice (1)) ] const getCombs = (min, max, xs) => xs ....