From 46e43f4bde4a35785b4997b81e86cd19f046b69b Mon Sep 17 00:00:00 2001 From: Minteck Date: Tue, 21 Dec 2021 16:52:28 +0100 Subject: Commit --- src/node_modules/es-abstract/2019/ToUint16.js | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 src/node_modules/es-abstract/2019/ToUint16.js (limited to 'src/node_modules/es-abstract/2019/ToUint16.js') diff --git a/src/node_modules/es-abstract/2019/ToUint16.js b/src/node_modules/es-abstract/2019/ToUint16.js new file mode 100644 index 0000000..b10e3ed --- /dev/null +++ b/src/node_modules/es-abstract/2019/ToUint16.js @@ -0,0 +1,19 @@ +'use strict'; + +var abs = require('./abs'); +var floor = require('./floor'); +var modulo = require('./modulo'); +var ToNumber = require('./ToNumber'); + +var $isNaN = require('../helpers/isNaN'); +var $isFinite = require('../helpers/isFinite'); +var $sign = require('../helpers/sign'); + +// http://www.ecma-international.org/ecma-262/5.1/#sec-9.7 + +module.exports = function ToUint16(value) { + var number = ToNumber(value); + if ($isNaN(number) || number === 0 || !$isFinite(number)) { return 0; } + var posInt = $sign(number) * floor(abs(number)); + return modulo(posInt, 0x10000); +}; -- cgit