🎶 Sym - 一款用 Java 实现的现代化社区(论坛/BBS/社交网络/博客)平台

📕 思源笔记 - 一款桌面端笔记应用,支持 Windows、Mac 和 Linux

🎸 Solo - B3log 分布式社区的博客端节点,欢迎加入下一代社区网络

♏ Vditor - 一款浏览器端的 Markdown 编辑器

0 篇文章

JavaScript - 求二项式系数

2020-03-25 描述计算两个整数 n 和 k 的二项式系数。提示使用 Number.isNaN()检查 n 和 k 是否为 NaN 如果 k 小于等于 0,或者大于等于 n,或者等于 1,或者等于 n-1 时,需返回适当的值如果 n-k 小于 k,则相应的切换其值从 2 开始循环到 k 来计算二项式系数使用 Math.round()将有误差的结果进行四舍五入代码 constbinomialCoefficient=(n,k)=>{if(Number.

JavaScript - 当为真值时便执行下一个函数

2020-03-18 描述将 x 值带入断言函数中进行测试。如果为 true 则返回真值处理函数 whenTrue(x),否则返回 x。提示返回一个仅接受单一参数 x 的函数根据 pred 的运行结果返回适当的值代码 constwhen=(pred,whenTrue)=>x=>(pred(x)?whenTrue(x):x);示例当一个数字为偶数时就乘以 2:constdoubleEvenNumbers=when(x=>x%2

功能 - 函数名称

2020-02-28 描述打印函数的名称。提示使用 console.debug()和参数中的 name 属性进行打印将方法的名称打印到控制台中的 debug 频道代码 constfunctionName=fn=>(console.debug(fn.name),fn);示例将方法名打印到控制台的 debug 频道中:functionName(Math.max);//max 返回总目录每天 30 秒系列之 JavaScript 代

功能 - 延迟执行

2020-02-27 描述 wait 毫秒后调用提供的函数。提示使用 setTimeout()延迟执行 fn 使用扩展运算符...为函数提供任意数量的参数代码 constdelay=(fn,wait,...args)=>setTimeout(fn,wait,...args);示例 1000 毫秒后打印日志:delay(function(text){console.log(text);},1000,'later');返

功能 - 防止抖动

2020-02-26 描述创建一个防止抖动的函数,使其延迟调用提供的函数,直到上次调用该函数至少经过了 ms 毫秒提示防止抖动函数每一次被调用前,都需要使用 clearTimeout()清空上一次将要运行的 timeout 使用 setTimeout()创建一个新的 timeout,将调用的函数延迟至少 ms 后在执行使用 Function.prototype.apply()设置函数的上下文为 this,并提供必要的参数第

功能 - 异常捕获

2020-02-25 描述尝试从提供的参数中调用其方法,返回运行的结果或者捕获的异常对象。提示使用 try...catch 块来返回函数运行的结果或者是适当的异常代码 constattempt=(fn,...args)=>{try{returnfn(...args);}catch(e){returneinstanceofError?e:newError(e);}};示例根据选择器获取元素,并对选择器错误的情

功能 - 柯里化函数

2020-01-23 描述将一个函数实现柯里化传参。提示使用递归如果提供的参数(args)个数充足,则调用传递的函数 fn 否则的话,返回一个包含剩余参数的柯里化函数 fn 如果你想要柯里化一个可以接受任意参数的函数(一个可变参函数,如 Math.min()),你可以将参数的数量传递给第二个可选参数 arity 代码 constcurry=(fn,arity=fn.length,...args)=>arity<=ar