Math.trunc()
Baseline
Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since julho de 2015.
O método Math.trunc() retorna a parte inteira de um número, descartando suas casas decimais.
Experimente
console.log(Math.trunc(13.37));
// Expected output: 13
console.log(Math.trunc(42.84));
// Expected output: 42
console.log(Math.trunc(0.123));
// Expected output: 0
console.log(Math.trunc(-0.123));
// Expected output: -0
Sintaxe
Math.trunc(x)
Parâmetros
x-
Um número.
Valor de retorno
A parte inteira de um dado número.
Descrição
Diferente dos demais métodos em Math: Math.floor(), Math.ceil() e Math.round(), o retorno esperado da função Math.trunc() é simples e direto, ela apenas trunca o número passado a ela como parâmetro, removendo todas as casas decimais dele, não importando se o número é positivo ou negativo.
Portanto, se o argumento passado for um número positivo, Math.trunc() será equivalente a Math.floor(), caso contrário Math.trunc() será equivalente a Math.ceil().
O argumento passado a esse método será convertido a um tipo numérico implicitamente.
Já que trunc() é um método estático em Math, sempre utilize Math.trunc(), ao invés de um método existente no objeto que você criou (Math não é um construtor).
Exemplos
>Usando Math.trunc()
Math.trunc(13.37); // 13
Math.trunc(42.84); // 42
Math.trunc(0.123); // 0
Math.trunc(-0.123); // -0
Math.trunc("-1.123"); // -1
Math.trunc(NaN); // NaN
Math.trunc("foo"); // NaN
Math.trunc(); // NaN
Polyfill
(umPolyfill é um pedaço de código que o desenvolvedor pode colocar na sua página para garantir compatilibilidade do método. No exemplo abaixo, caso o navegador não tiver o método trunc na classe Math, ele será criado);
Math.trunc =
Math.trunc ||
function (x) {
return x < 0 ? Math.ceil(x) : Math.floor(x);
};
Especificações
| Specification |
|---|
| ECMAScript® 2026 Language Specification> # sec-math.trunc> |
Navegadores compatíveis
Loading…
Veja também
Math.abs()Math.ceil()Math.floor()Math.round()Math.sign()Experimental