1.Javascript一维数组、二维数组
「一维数组」
1) var mycars=new Array()
mycars[0]="Saab" mycars[1]="Volvo" mycars[2]="BMW"
2)
var mycars=
new Array("Saab","Volvo","BMW")
3)
var mycars=[
"Saab","Volvo","BMW"];
「二维数组」用一维数组来模拟
1) var arr = new Array(['a','b','c'],['d','e','f']);
2) arr=new Array();
for(i=0;i<100;i++) { arr[i]=new Array(...); }3) var arr=new Array(
new Array(), new Array(), new Array() );2.截取最后一个字符
str1=str1.substr(0,str1.length-1);
3.ReplaceAll
str=str.replace(/,/g,""); //去掉所有逗号
4.浮点数计算误差
15.12*15=226.79999999999998
解决方式:(15.12*15).toFixed(2)=226.80
5.判断“截止日期必须晚于今天”[javascripts]
Date();//系统的当前日期时间
Date.parse(date);//把日期时间转化为数值,转化后可以比较大小
('2011-5-31').replace('-','/');//javascript的Date函数不支持 "2011-5-31 " 写法
下面列举javascript的Date函数的写法支持情况:
new Date("2000/01/02");//输出Sun Jan 2 00:00:00 UTC+0800 2000 Date("2000/01/02");//输出Wed Dec 05 10:18:33 2007,此处输出的是系统的当前时间 new Date("2000-01-02");//输出NaN Date("2000-01-02");//输出Wed Dec 05 10:18:33 2007,此处输出的是系统的当前时间
6.日期加减
function dateDiff(interval, date1, date2){var objInterval = {'D' : 1000 * 60 * 60 * 24, 'H' : 1000 * 60 * 60, 'M' : 1000 * 60, 'S' : 1000, 'T' : 1}; interval = interval.toUpperCase(); var dt1 = Date.parse(date1.replace(/-/g, '/')); var dt2 = Date.parse(date2.replace(/-/g, '/')); try { return Math.round((dt2 - dt1) / eval('(objInterval.' + interval + ')')); } catch (e) { return e.message; }}
调用实例:
var year0=document.getElementById("计划转正时间").value; var now=new Date();var bnow=now.getFullYear()+"-1-1"; //本年第一天var enow=now.getFullYear()+"-12-31"; //本年最后一天var fnow=dateDiff('D',bnow,enow); //本年全年日期var s=year0.split("-");var yy0=parseInt(s[0]); var mm=parseInt(s[1]-1);var yy1=yy0+1;var yy10=yy0+10;var yy20=yy0+20;var dd=parseInt(s[2]);var zz1 = new Date(yy1,mm,dd); var zz10= new Date(yy10,mm,dd);var zz20=new Date(yy20,mm,dd);var year1=zz1.getFullYear()+"-"+(zz1.getMonth()+1)+"-"+zz1.getDate(); //转正1年var year10=zz10.getFullYear()+"-"+(zz10.getMonth()+1)+"-"+zz10.getDate(); //转正10年var year20=zz20.getFullYear()+"-"+(zz20.getMonth()+1)+"-"+zz20.getDate(); //转正20年var day1=dateDiff('D', bnow, year1); //若已满1年,未满1年天数var eday1=dateDiff('D', year1,enow ); //若已满1年,已满1年天数var day10=dateDiff('D',bnow,year10); //若已满10年,未满10年天数var eday10=dateDiff('D', year10, enow); //若已满10年,已满10年天数var day20=dateDiff('D',bnow,year20); //若已满20年,未满20年天数var eday20=dateDiff('D', year20, enow);if(day20<=0) //超过20年{document.getElementById("共计年假").value='15';}else if(day20>0 && day200 && day10 0 && day1
调用实例2:
function setleaveday1(){var bdate=document.getElementById("结束时间").value;var now=new Date();var cnow=now.getFullYear()+"-"+(now.getMonth()+1)+"-"+now.getDate();var day1=dateDiff('D', cnow, bdate); if(day1<-2){alert("请假申请日期不能大于过去2天!");document.getElementById("结束时间").value="";}}