zoukankan      html  css  js  c++  java
  • 常见js工具积累1

    downloadFile(url, fileName) {
          this.$axios({
            method: "get",
            url: "/ossfile/download/" + url,
            responseType: 'blob'
          }).then(function (response) {
            var blob = new Blob([response.data])
            var downloadElement = document.createElement('a');
            var href = window.URL.createObjectURL(blob); //创建下载的链接
            downloadElement.href = href;
            let newFileName = fileName;
            if (newFileName.indexOf("!") != -1) {
              let nameArr = newFileName.split("!");
              if (nameArr.length > 1) {
                newFileName = nameArr[0];
                let sufixs = nameArr[1].split(".");
                newFileName = newFileName + "." + sufixs[1];
              }
            }
            downloadElement.download = newFileName; //下载后文件名
            document.body.appendChild(downloadElement);
            downloadElement.click(); //点击下载
            document.body.removeChild(downloadElement); //下载完成移除元素
            window.URL.revokeObjectURL(href); //释放掉blob对象
          })
            .catch(function (error) {
              console.log(error);
            });
        },

    2.字符串是否为空以及js金额大小写转换

       isNullOrEmpty(strVal) {
          if (strVal == '' || strVal == null || strVal == undefined || strVal.length == 0) {
            return true;
          }
          return false;
        },
        capitalAmount(amount) {
              // 汉字的数字
              const cnNums = ["零", "壹", "贰", "叁", "肆", "伍", "陆", "柒", "捌", "玖"];
              // 基本单位
              const cnIntRadice = ["", "拾", "佰", "仟"];
              // 对应整数部分扩展单位
              const cnIntUnits = ["", "万", "亿", "兆"];
              // 对应小数部分单位
              const cnDecUnits = ["角", "分", "毫", "厘"];
              // 整数金额时后面跟的字符
              const cnInteger = "整";
              // 整型完以后的单位
              const cnIntLast = "元";
              // 最大处理的数字
              const maxNum = 9999999999999999.99;
              // 金额整数部分
              let integerNum;
              // 金额小数部分
              let decimalNum;
              // 输出的中文金额字符串
              let chineseStr = "";
              // 分离金额后用的数组,预定义
              let parts;
              let orginAmount=amount
              amount=Math.abs(amount)
              if (amount === "") { return ""; }
              amount = parseFloat(amount);
              if (amount >= maxNum) {
                // 超出最大处理数字
                return "";
              }
              if (amount === 0) {
                chineseStr = cnNums[0] + cnIntLast + cnInteger;
                return chineseStr;
              }
              // 转换为字符串
              amount = amount.toString();
              if (amount.indexOf(".") === -1) {
                integerNum = amount;
                decimalNum = "";
              } else {
                parts = amount.split(".");
                integerNum = parts[0];
                decimalNum = parts[1].substr(0, 4);
              }
              // 获取整型部分转换
              if (parseInt(integerNum, 10) > 0) {
                let zeroCount = 0;
                const IntLen = integerNum.length;
                for (let i = 0; i < IntLen; i++) {
                  const n = integerNum.substr(i, 1);
                  const p = IntLen - i - 1;
                  const q = p / 4;
                  const m = p % 4;
                  if (n === "0") {
                    zeroCount++;
                  } else {
                    if (zeroCount > 0) {
                      chineseStr += cnNums[0];
                    }
                    // 归零
                    zeroCount = 0;
                    chineseStr += cnNums[parseInt(n, 10)] + cnIntRadice[m];
                  }
                  if (m === 0 && zeroCount < 4) {
                    chineseStr += cnIntUnits[q];
                  }
                }
                chineseStr += cnIntLast;
              }
              // 小数部分
              if (decimalNum !== "") {
                const decLen = decimalNum.length;
                for (let i = 0; i < decLen; i++) {
                  const n = decimalNum.substr(i, 1);
                  if (n !== "0") {
                    chineseStr += cnNums[Number(n)] + cnDecUnits[i];
                  }
                }
              }
              if (chineseStr === "") {
                chineseStr += cnNums[0] + cnIntLast + cnInteger;
              } else if (decimalNum === "") {
                chineseStr += cnInteger;
              }
              if(orginAmount<0) chineseStr = "负" + chineseStr;
              return chineseStr;
            }
  • 相关阅读:
    结对项目黄金点游戏(邓乐&曾亮)
    软件工程个人项目:一个能自动生成小学四则运算的程序
    IE7下面zindex失效的问题
    参加一战到底有感
    Javascript中的prototype
    浏览器的页面渲染
    使用document.domain实现ajax跨子域
    PHP模拟http请求
    六天带你了解活动营销之第一天营销活动形式多样化
    jQuery源码学习第一天jQuery框架学习
  • 原文地址:https://www.cnblogs.com/xmyfsj/p/14951628.html
Copyright © 2011-2022 走看看