function test(lat1) { assertEq(isLatin1(lat1), true); var twoByte = "\u1200" + lat1; twoByte.indexOf("X"); // Flatten. twoByte = twoByte.substr(1); assertEq(isLatin1(lat1), true); assertEq(isLatin1(twoByte), false); assertEq(Date.parse(lat1), Date.parse(twoByte)); } // ISO format test("2014-06-06"); test("2014-06-06T08:30+01:00"); test("T11:59Z"); // Non-ISO format test("06 Jun 2014, 17:20:36"); test("6 Jun 2014"); test("Wed Nov 05 21:49:11 GMT-0800 1997"); test("Jan 30 2014 2:30 PM"); // Invalid test("06 Aaa 2014, 17:20:36"); test("6 Jun 10"); test("2014-13-06"); test("2014-06-06T08:30+99:00");