once
创建最多运行一次的函数
169 bytes
since v12.2.0
使用方法
围绕给定函数创建包装器,使其最多执行一次。对包装函数的后续调用返回第一次执行的结果,无论提供什么参数。这种行为类似于记忆化,但专门为单次使用函数设计。第一次调用的结果存储在内部,允许高效检索而无需重新计算。
import * as _ from "radashi";
const fn = _.once(() => Math.random());fn(); // 0.5fn(); // 0.5重置函数
once.reset 函数清除先前使用 once 包装的函数的存储结果。这允许函数再次执行,就像以前从未调用过一样,实现函数的动态重用和新的计算。
import * as _ from "radashi";
const fn = once(() => Math.random());fn(); // 0.5fn(); // 0.5
once.reset(fn);fn(); // 0.3fn(); // 0.3