ฉันจะจัดการวันที่ใหม่ (ตัวแปร) ในจาวาสคริปต์สำหรับ iOS และ IE ได้ดีที่สุดได้อย่างไร

ตัวอย่าง:

var temp = 'Thu Jan 09 2014 14:49:18 GMT-0500 (Eastern Standard Time)';
var testDate = new Date(temp);
alert(testDate);

การแจ้งเตือนจะอ่านว่า 'วันที่ไม่ถูกต้อง'

ตอนนี้ถ้าฉันเปลี่ยนเป็น:

var testDate = new Date('Thu Jan 09 2014 14:49:18 GMT-0500 (Eastern Standard Time)');
alert(testDate);

การแจ้งเตือนจะเป็น: วันพฤหัสบดีที่ 09 มกราคม 2014 เวลา 14:49:18 GMT-0500 (เวลามาตรฐานตะวันออก)

ปัญหาคือฉันได้รับสตริงวันที่ในอาร์เรย์ และหากฉันตั้งค่าข้อมูล:

for(i in array){
    alert(new Date(array[i]));
}

และเนื่องจากตัวอย่างข้างต้น ฉันได้รับ 'วันที่ไม่ถูกต้อง' ใน IE และ iOS (ฉันใช้แอป Chrome ใน iOS) มันทำงานได้ดีใน Chrome/firefox บนเดสก์ท็อป ฉันจะทำอย่างไรเพื่อให้ Date() ทำงานอย่างถูกต้องใน IE และ บน iOS ขอย้ำอีกครั้งว่าฉันกำลังทำเช่นนี้ใน javascript และจะไม่สามารถเข้าถึงอินเทอร์เน็ตได้ ดังนั้นลิงก์ src="" ออนไลน์จึงไม่ทำงาน


person user3017876    schedule 09.01.2014    source แหล่งที่มา
comment
เป็นไปได้ไหมที่จะรับสตริงวันที่ที่เป็นวันที่ RFC2822 ที่ถูกต้อง ถ้าไม่ คุณสามารถแปลงสตริงของคุณเป็นวันที่ RFC2822 ที่ถูกต้องได้หรือไม่   -  person kevinji    schedule 10.01.2014
comment
สตริงวันที่ของคุณมาจากไหน?   -  person Rocket Hazmat    schedule 10.01.2014
comment
สตริงมาจากเซิร์ฟเล็ตที่เรียกขั้นตอนการจัดเก็บฐานข้อมูลและได้รับสตริงวันที่กลับมา ตัวอย่างของสตริงที่แน่นอนที่จะส่งกลับคือ: 2014-01-03 08:00:00   -  person user3017876    schedule 10.01.2014
comment
ฉันจะใช้เซิร์ฟเวอร์เพื่อแปลงสตริงวันที่ให้อยู่ในรูปแบบที่เหมาะสม   -  person Kevin B    schedule 10.01.2014
comment
เป็นไปได้ที่ซ้ำกันของ รูปแบบวันที่ใดบ้างที่สอดคล้องกับ IETF ที่สอดคล้องกับ RFC 2822   -  person Paul Sweatte    schedule 13.02.2014
comment
ฉันแนะนำให้ส่งการประทับเวลาเป็นมิลลิวินาที (หรือวินาที) ผ่านเครือข่าย ไม่มีข้อผิดพลาดในการแยกวิเคราะห์เกิดขึ้นที่นี่   -  person sjngm    schedule 13.02.2014