testStringToNumber.js (732B)
1 enableOsiPointRegisterChecks(); 2 3 function convertToInt(str) { 4 return str | 0; 5 } 6 7 function convertToIntOnTrace(str) { 8 var z; 9 for (var i = 0; i < 9; ++i) { 10 z = str | 0; 11 } 12 return z; 13 } 14 15 function convertToDouble(str) { 16 return str * 1.5; 17 } 18 19 function convertToDoubleOnTrace(str) { 20 var z; 21 for (var i = 0; i < 9; ++i) { 22 z = str * 1.5; 23 } 24 return z; 25 } 26 27 assertEq(convertToInt("0x10"), 16); 28 assertEq(convertToInt("-0x10"), 0); 29 30 assertEq(convertToIntOnTrace("0x10"), 16); 31 assertEq(convertToIntOnTrace("-0x10"), 0); 32 33 assertEq(convertToDouble("0x10"), 24); 34 assertEq(convertToDouble("-0x10"), NaN); 35 36 assertEq(convertToDoubleOnTrace("0x10"), 24); 37 assertEq(convertToDoubleOnTrace("-0x10"), NaN);