Math.trunc()

O método Math.trunc() retorna a parte inteira de um número, descartando suas casas decimais.

Experimente

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

Especificação Status Comentário
ECMAScript 2015 (6th Edition, ECMA-262)
The definition of 'Math.trunc' in that specification.
Padrão Definição inicial.

BCD tables only load in the browser

Veja também