source: imaps-frontend/node_modules/es-abstract/2024/ToUint32.js@ d565449

main
Last change on this file since d565449 was d565449, checked in by stefan toskovski <stefantoska84@…>, 4 weeks ago

Update repo after prototype presentation

  • Property mode set to 100644
File size: 587 bytes
Line 
1'use strict';
2
3var modulo = require('./modulo');
4var ToNumber = require('./ToNumber');
5var truncate = require('./truncate');
6
7var isFinite = require('../helpers/isFinite');
8
9// https://262.ecma-international.org/14.0/#sec-touint32
10
11var two32 = 0x100000000; // Math.pow(2, 32);
12
13module.exports = function ToUint32(argument) {
14 var number = ToNumber(argument);
15 if (!isFinite(number) || number === 0) {
16 return 0;
17 }
18 var int = truncate(number);
19 var int32bit = modulo(int, two32);
20 return int32bit === 0 ? 0 : int32bit; // in the spec, these are math values, so we filter out -0 here
21};
Note: See TracBrowser for help on using the repository browser.