一些工作上用的到的方法做个总结,方便查阅

1、指定时间添加天数后时间

function dateAddDays(dateStr,dayCount) {
        var tempDate=new Date(dateStr.replace(/-/g,"/"));//把日期字符串转换成日期格式
        var resultDate=new Date((tempDate/1000+(86400*dayCount))*1000);//增加n天后的日期
        var resultDateStr=resultDate.getFullYear()+"-"+(resultDate.getMonth()+1)+"-"+(resultDate.getDate());//将日期转化为字符串格式
        return resultDateStr;
    }

2、获取当前时间戳

let timestamp = (new Date()).valueOf();//获取当前毫秒的时间戳,准确!

3、获取数组中最大值

var b = Math.max.apply(null,arr)

4、保留两位小数(不进位)

Math.floor(15.7784514000 * 100) / 100

5、数组去重
      var arr = [3, 2, 3, 1, 4, true, false, "3", "22", "2", 2]
       function norepeat (arr) {
          var resArr = [];
           var obj = {};
           for (var i = 0, len = arr.length; i < len; i++) {
                if (!(obj[arr[i] + typeof arr[i]])) {
                        resArr.push(arr[i]);
                        obj[arr[i] + typeof arr[i]] = 1;
                 }
           }
               return resArr;
        }
                var res = norepeat(arr);
                console.log(res);

6、公司用的数据字典写了个方法,方便复用
    // 数据字典(class类选择器名称,数据字典类型,是否有传值显示,是否对数据有筛选通过id)
    function dictionaries(name,type,value,DataFilter){
        $.get($.Interface.open.dic.dictype, {type: type}, function(data) {
            let Data;
            if (DataFilter) {
                Data = data.ext.filter(v => v.id == DataFilter)
            }else {
                Data = data.ext
            }
            $(`.${name}`).html('')
            if(value){
                for(var i = 0,len = Data.length;i<len;i++) {
                    if(value == Data[i].id) {
                        Data[i].selected = true;
                        break;
                    }
                }
                $(`.${name}`).select2({
                    data: Data,
                    placeholder: $.Local.common.pleaseChoose,
                    allowClear: true
                })
            }else{
                $(`.${name}`).select2({
                    data: Data,
                    placeholder: $.Local.common.pleaseChoose,
                    allowClear: true
                })
            }
        })
    }

7、获取当前时间
    //获取当前时间
    function getNowDate() {
        let date = new Date()
        let y = date.getFullYear()
        let m = '-' + (date.getMonth() + 1)
        let d = '-' + date.getDate()
        if (m.length == 2) {
            m = m.replace('-','-0')
        }
        if (d.length == 2) {
            d = d.replace('-','-0')
        }
        let nowDay = y + m + d
        return nowDay
    }

8、地址栏传值中文

//传递参数

var storageNoEcode = encodeURI(encodeURI(storageNo));

//获取参数可使用正则

function GetQueryString(name) {
	var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
	var r = window.location.search.substr(1).match(reg);
	if(r != null)
		return unescape(r[2]);
	return null;
}

//接受参数后的转码

var storageNo = decodeURI(storageNoEcode)

9、js 去重 数组对象中 id相同 的元素

 var arr = [
     {id:1,name:'aa'},
     {id:1,name:'aa'},
     {id:3,name:'cc'},
     {id:4,name:'dd'}
 ] 
       
  function deWeight(arr,initArr=[]) {
      arr.forEach(item=>{
          let isFind = initArr.find(cell=> cell.id === item.id)
          if(!isFind) {
              initArr.push(item)
          }
      })
      return initArr
  } 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值