Tôi đang lấy ngày từ một đối tượng JSON theo định dạng 2012-12-31 và cố gắng chuyển đổi nó thành các giá trị thân thiện và xuất nó.vấn đề đối tượng ngày javascript trong Safari và IE
var redeemableDate = item.Deal.RedeemableDate; //this is coming in the form of 2012-12-31
var redeemableDate = new Date(redeemableDate);
var rdDay = weekday[redeemableDate.getDay()]; //using an array with weekdays
var rdDate = redeemableDate.getDate();
var rdMonth = monthNames[redeemableDate.getMonth()]; //using an array with month names
var rdYear = redeemableDate.getFullYear();
response.write('Valid ' + rdDay + ' ' + rdDate + ' ' + rdMonth + ' ' + rdYear + ' ONLY');
Mọi thứ hoạt động và tìm kiếm trong Firefox và Chrome, nhưng Safari và IE (chỉ được thử nghiệm trên IE8 cho đến nay) không thích nó.
Trong FF và Chrome tôi nhận được mong đợi:
hợp lệ Chủ Nhật 02 Tháng 9 2012 CHỈ
Nhưng trong Safari và IE, tôi nhận được:
trị không xác định NaN không xác định NaN CHỈ
Khi tôi cảnh báo màu đỏ eemableDate sau khi tôi đã đặt nó làm đối tượng Date, Safari trả về 'Invalid Date' và IE trả về 'NaN'. Điều này rõ ràng là nơi vấn đề nằm. Có cách nào tôi có thể nhận được giá trị của tôi vào một đối tượng ngày cho các trình duyệt này?
giải pháp đơn giản và ngọt ngào :) –
'var your_date = new Date (dateString.split (" - "). Join ("/"));' – jlarson
Tốt một Joe! Tôi sẽ cập nhật câu trả lời của mình. – jack