SOURCE

function lowerCase(input) {
    return input && typeof input === 'string' ? input.toLocaleLowerCase() : input
}

function uperCase(input){
    return input && typeof input === 'string' ? input.toLocaleUpperCase() : input
}

function trim(input){
    return input && typeof input === 'string' ? input.trim():input
}

function split(input,par=','){
    return input && typeof  input === 'string' ? input.split(par):input
}

function compose(...funs){
    return function(x){
        return funs.reduce(function(arg,fn){
            return fn(arg)
        },x)
    }
}


const test =  compose(trim,uperCase,split)
// console.log('test',test("A,b ,c,de"))

const func = function(a) {
  return function(b) {
    return a * a + b * b;
  }
}
// const func1 = func(1)
// console.log(func1(2))

function buildArray(arr, length, min, max) {
    if (!Array.isArray(arr)) arr = []
    if (length < 1) return []
    if (arr.length === length) return arr
    const random = Math.random() * (+max - +min) + +min
    if (!arr.includes(random)) arr.push(random)
    return buildArray(arr, length, min, max)
}

console.log(buildArray([], 5, 2, 32))
console 命令行工具 X clear

                    
>
console