loosely-equal.js (472B)
1 function check() { 2 for (let i = 1; i < 2000; i++) { 3 assertEq(Object(true) == 1n, true); 4 assertEq(1n == Object(true), true); 5 assertEq(Object(false) == 0n, true); 6 assertEq(0n == Object(false), true); 7 8 let called = false; 9 assertEq({ valueOf() { called = true; return 0; }} == 0n, true); 10 assertEq(called, true); 11 12 called = false; 13 assertEq(1n == { valueOf() { called = true; return 1; }}, true); 14 assertEq(called, true); 15 } 16 } 17 18 check();