函数多次调用只执行一次

高阶/闭包

使用场景: 多次支付只付一次

function once(fn) {
    let done = false
    return function (...args) {
        if (done) return
        done = true
        return fn(...args)
    }
}
const fn = function (rmb) {
    console.log(`需要支付${rmb}元`);
}
const pay = once(fn)
pay(10)
pay(10)
pay(10)
pay(10)
pay(10)

猜你喜欢

转载自blog.csdn.net/m0_56274171/article/details/124047263