new Date();
Date.now();
new Date(2018,2,20);// 2 --->3月
new Date("2018-03-20");
new Date("2018-3-2");//ios Invalid Date
/** * 选取出时间期内的选项 * */ function testItem(array,start,end){ if(!array||array.length==0) return []; var sk = start||"start"; var ek = end||"end"; var now = new Date(); return array.filter(function(item){ try { var sce = scene; if(window.isXCX) sce = "xcx"; if(item.scene&&item.scene.indexOf("all")<0&&(item.scene.indexOf(sce)<0)){ return false; } if (item[sk] && item[ek]) { var start = new Date(item[sk]); var end = new Date(item[ek]); if (start<now && end > now) {//生效时间内。 return true; } } } catch (e) { console.log(e); } return false; }); }
/** * 替换param
* @param param * @param value * @param url * @param forceReplace * @returns {*} */ function replaceParam(param, value, url, forceReplace) { url = url || location.href; var reg = new RegExp("([\\?&]" + param + "=)[^&#]*","g"); var del = typeof value =="string"&&value.toLowerCase()=="del"?true:false; var result = url.match(reg); if (!result) { if(del) return url; var fh = "&"; if (url.indexOf("?") == -1) {//不存在问号 fh = "?"; } return url + fh + param + "=" + value; } if(del||forceReplace){ if(result.length>1){ for(var i= 1,l = result.length;i<l;i++) { var str = result[0].substr(0, 1); if (str == "#") url = url.replace(result[i], "#"); else url = url.replace(result[i], ""); } } if(del){ var str = result[0].substr(0,1); url = url.replace(result[0],str=="&"?"":str);//&ab=1 则&也要删除,如果是?,#,则继续保留 return url; } if (forceReplace) { return url.replace(reg, "$1" + value); } } return url; }