You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
15 lines
461 B
15 lines
461 B
'use strict'; |
|
|
|
var floor = require('./floor'); |
|
|
|
var $TypeError = require('es-errors/type'); |
|
|
|
// https://262.ecma-international.org/14.0/#eqn-truncate |
|
|
|
module.exports = function truncate(x) { |
|
if (typeof x !== 'number' && typeof x !== 'bigint') { |
|
throw new $TypeError('argument must be a Number or a BigInt'); |
|
} |
|
var result = x < 0 ? -floor(-x) : floor(x); |
|
return result === 0 ? 0 : result; // in the spec, these are math values, so we filter out -0 here |
|
};
|
|
|