bigint-conversion.js (937B)
1 // Copyright (C) 2017 Robin Templeton. All rights reserved. 2 // This code is governed by the BSD license found in the LICENSE file. 3 4 /*--- 5 description: BigInt to Number conversion 6 esid: pending 7 features: [BigInt, exponentiation] 8 ---*/ 9 10 assert.sameValue(Number(0n), 0); 11 assert.sameValue(+(new Number(0n)), +(new Number(0))); 12 13 assert.sameValue(Number(2n**53n), 9007199254740992); 14 assert.sameValue(Number(2n**53n + 1n), 9007199254740992); 15 assert.sameValue(Number(2n**53n + 2n), 9007199254740994); 16 assert.sameValue(Number(2n**53n + 3n), 9007199254740996); 17 assert.sameValue(Number(2n**53n + 4n), 9007199254740996); 18 19 assert.sameValue(Number(-(2n**53n)), -9007199254740992); 20 assert.sameValue(Number(-(2n**53n + 1n)), -9007199254740992); 21 assert.sameValue(Number(-(2n**53n + 2n)), -9007199254740994); 22 assert.sameValue(Number(-(2n**53n + 3n)), -9007199254740996); 23 assert.sameValue(Number(-(2n**53n + 4n)), -9007199254740996); 24 25 reportCompare(0, 0);