1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
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();
|