safari浏览器使用new Date(日期转换),日期格式化

safari浏览器里面的new Date(time),其中time的日期格式要用yyyy/mm/dd,因为safari浏览器只能识别‘/’

所以要兼容众多浏览器可以先判断当前是哪个浏览器,然后再转换

dateFormatStr:function(time) {  //time为 yyyy-mm-dd格式日期
	//取得浏览器的userAgent字符串
	var userAgent = navigator.userAgent;
	//判断是否Safari浏览器
	if (userAgent.indexOf("Safari") > -1) {
		time = time.replace(/\-/g,"/");  //把'-'转成'/' yyyy/mm/dd
	}
	var date=new Date(time);
	var year=date.getFullYear();
	/* 在日期格式中,月份是从0开始的,因此要加0
	 * 使用三元表达式在小于10的前面加0,以达到格式统一  如 09:11:05
	 * */
	var month= date.getMonth()+1<10 ? "0"+(date.getMonth()+1) : date.getMonth()+1;
	var day=date.getDate()<10 ? "0"+date.getDate() : date.getDate();
	return year+"-"+month+"-"+day;
}

这样就可以避免safari浏览器显示日期为NaN-NaN-NaN的问题了

你可能感兴趣的:(JavaScript,javascript)