js 工具

/**
  * @description 金额运算
  * @param { '+' | '-' | '*' | '/' } method 计算方法
  * @param { string | number} args 需要参与计算的数值或字符串
  * @return { number } 计算后的值
  */
  const operation = (method, ...args) => {
  const arr = args.map((item) => parseInt((item *= 100)));
  let num = 0;
  switch (method) {
  case '+':
  num = arr.reduce((total, item) => total + item) / 100;
  break;
  case '-':
  num = arr.reduce((total, item) => total - item) / 100;
  break;
  case '*':
  num = arr.reduce((total, item) => (total * item) / 100, 1);
  break;
  case '/':
  num = arr.reduce((total, item) => (total * 100) / item) / 100;
  break;
  }
  return num;
  };
   
  /**
  * @description 防抖
  * @param { function } handler 触发的函数
  * @param { number } delay 时间
  */
  const debounce = (handler, delay) => {
  let timer;
  return function () {
  let _this = this;
  clearTimeout(timer);
  timer = setTimeout(function () {
  handler.apply(_this, arguments);
  }, delay);
  };
  };
posted @   小寒爱吃西红柿  阅读(25)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
点击右上角即可分享
微信分享提示