new Date 的瀏覽器相容性 NAN 問題

2021-09-02 19:31:17 字數 1214 閱讀 9607

var timestart ='2010-05-04';

var timeend ='2015-04-01';

var time1 = (timestart).tostring();

console.log(time1);

var time2 = (timeend).tostring();

timestart =newdate(time1);

timeend =newdate(time2);

問題就在於 new date(time1)這個建構函式無法正確的生成date物件,console.log(time1)返回值為nan.,問題在**呢?

正確的做法

var time1 = (timestart).tostring();

var time2 = (timeend').tostring();

timestart =newdate(date.parse(time1.replace(/-/g,"/"))).gettime();

timeend =newdate(date.parse(time2.replace(/-/g,"/"))).gettime();

主要的變化是對預設的日期格式進行了轉換, 基於'/'格式的日期字串,才是被各個瀏覽器所廣泛支援的,『-』連線的日期字串,則是只在chrome下可以正常工作。

知識點總結

'2015-05-04'是無法被各個瀏覽器中,使用new date(str)來正確生成日期物件的。 正確的用法是'2015/05/05'.

new Date 傳參的瀏覽器相容性

測試 以下是在ie9的測試情況 可以看到ie9不支援new date 2018 1 2 和new date 123456 但是支援new date 2018 01 02 new date 2018 1 2 和new date 123456 主流瀏覽器都支援由 分隔的日期格式 需求假如有這樣的需求,乙...

瀏覽器相容性

瀏覽器相容性是乙個很長久的話題,之所以前端需要面對瀏覽器相容性,是因為使用者的環境有不同的平台,不同的瀏覽器。不同的廠商之間為了相互競爭,對標準的實現不一樣。不同的瀏覽器有不同的核心。即使同乙個瀏覽器也有不同的版本,不同的版本對同一特性的支援情況也不盡相同。也可能某個瀏覽器的某個版本針對某個特性存在...

瀏覽器相容性

所謂的瀏覽器相容性問題,是指因為不同的瀏覽器對同一段 有不同的解析,造成頁面顯示效果不統一的情況。在大多數情況下,我們的需求是,無論使用者用什麼瀏覽器來檢視我們的 或者登陸我們的系統,都應該是統一的顯示效果。所以瀏覽器的相容性問題是前端開發人員經常會碰到和必須要解決的問題。在學習瀏覽器相容性之前,我...