unaryarith-null-undef-bool.js (669B)
1 function test(input, resPos, resNeg, resToNumeric, resInc, resDec) { 2 assertEq(+input, resPos); 3 assertEq(-input, resNeg); 4 5 var input1 = input; 6 assertEq(input1++, resToNumeric); 7 assertEq(input1, resInc); 8 9 var input2 = input; 10 assertEq(++input2, resInc); 11 assertEq(input1, resInc); 12 13 var input3 = input; 14 assertEq(input3--, resToNumeric); 15 assertEq(input3, resDec); 16 17 var input4 = input; 18 assertEq(--input4, resDec); 19 assertEq(input4, resDec); 20 } 21 for (var i = 0; i < 50; i++) { 22 test(null, 0, -0, 0, 1, -1); 23 test(undefined, NaN, NaN, NaN, NaN, NaN); 24 test(true, 1, -1, 1, 2, 0); 25 test(false, 0, -0, 0, 1, -1); 26 }