1.js金钱转换类
这是一个远古时期的函数,拿来分享一下,它将输入的数字保留2位小数并补0
function formatAsMoney(mnt) {
mnt -= 0;
mnt = (Math.round(mnt * 100)) / 100;
return (mnt == Math.floor(mnt)) ? mnt + '.00' : ((mnt * 10 == Math
.floor(mnt * 10)) ? mnt + '0' : mnt);
}
console.log(formatAsMoney(10.7));
console.log(formatAsMoney(10.211));
console.log(formatAsMoney(10.999));
打印结果为:
2.js获取相差的天数
这个本来是计算bootstrap的datetimepicker输入框之间相差的天数,这里就直接赋值测试一下:
function formatAsMoney() {
var d1 = $("#start_time").val();
d1="2019/02/03";
var d2 = $("#end_time").val();
d2="2019/03/01";
if(d1 =="" || d2==""){
bootbox.alert("起始时间不能为空");
return false;
}
var b1=new Date(Date.parse(d1));
console.log(b1);
var b2=new Date(Date.parse(d2));
console.log(b2);
var days = Math.floor((b2-b1)/(24*3600*1000));
console.log(days);
}
formatAsMoney();
打印结果:
注:Date.parse("2019/03/01")可以把字符串转换为时间戳。
3.利用ajax触发事件做遮罩层(等待框)
$(function () {
/*ajax发送的时候显示 半透明的遮罩层*/
$(document).ajaxSend(function(e, xhr, options) {
$('#overlay').show();
});
$(document).ajaxComplete(function(e, xhr, options) {
$('#overlay').hide();
});
});
注:$('#overlay')是一个等待框。
4.获得上个月的现在时间
又是一个奇葩的需求,总之这个函数可以获得上个月的现在时间。。。:
function getPreMonth(date) {
var arr = date.split('-');
var year = arr[0]; //获取当前日期的年份
var month = arr[1]; //获取当前日期的月份
var day = arr[2]; //获取当前日期的日
var days = new Date(year, month, 0);
days = days.getDate(); //获取当前日期中月的天数
var year2 = year;
var month2 = parseInt(month) - 1;
if (month2 == 0) {
year2 = parseInt(year2) - 1;
month2 = 12;
}
var day2 = day;
var days2 = new Date(year2, month2, 0);
days2 = days2.getDate();
if (day2 > days2) {
day2 = days2;
}
if (month2 < 10) {
month2 = '0' + month2;
}
var t2 = year2 + '-' + month2 + '-' + day2;
console.log(t2);
return t2;
}
getPreMonth("2019-01-02");
打印结果:
5.设置cookies
function setCookie(c_name,value,expiredays)
{
var exdate=new Date()
exdate.setDate(exdate.getDate()+expiredays)
document.cookie=c_name+ "=" +escape(value)+
((expiredays==null) ? "" : ";expires="+exdate.toGMTString())
}