function toLatin1(s) { assertEq(isLatin1(s), true); return s; } function testToNumber() { // Latin1 assertEq(+toLatin1("12345.6"), 12345.6); assertEq(+toLatin1("+123"), 123); assertEq(+toLatin1("0xABC"), 0xABC); assertEq(+toLatin1("112."), 112); assertEq(+toLatin1("112.A"), NaN); assertEq(+toLatin1("-Infinity"), -Infinity); // TwoByte function twoByte(s) { s = "\u1200" + s; s = s.substr(1); assertEq(isLatin1(s), false); return s; } assertEq(+twoByte("12345.6"), 12345.6); assertEq(+twoByte("+123"), 123); assertEq(+twoByte("0xABC"), 0xABC); assertEq(+twoByte("112."), 112); assertEq(+twoByte("112.A"), NaN); assertEq(+twoByte("-Infinity"), -Infinity); } testToNumber();