---
title: Número
slug: Web/JavaScript/Reference/Global_Objects/Number
tags:
  - JavaScript
  - Número
  - Referência(2)
translation_of: Web/JavaScript/Reference/Global_Objects/Number
---
<div>{{JSRef("Global_Objects", "Number")}} </div>

<h2 id="Summary" name="Summary">Sumário</h2>

<p>O objeto JavaScript <strong><code>Number</code></strong> é um objeto encapsulado que permite você trabalhar com valores numéricos. Um objeto <code>Number</code> é criado utilizando o construtor <code>Number()</code>.</p>

<h2 id="Syntax" name="Syntax">Construtor</h2>

<pre class="syntaxbox">new Number(value);</pre>

<h3 id="Parameters" name="Parameters">Parâmetros</h3>

<dl>
 <dt><code>value</code></dt>
 <dd>O valor numérico do objeto sendo criado.</dd>
</dl>

<h2 id="Description" name="Description">Descrição</h2>

<p>Os principais usos para o objeto <code>Number</code> são:</p>

<ul>
 <li>Se o objeto não pode ser convertido para um número, é retornado <code>NaN</code>.</li>
 <li>Fora do contexo de um construtor (Ex., Sem o operador {{jsxref("Operators/new", "new")}}, <code>Number</code> pode ser utilizador para realizar uma conversão de tipo.</li>
</ul>

<h2 id="Properties" name="Properties">Propriedades</h2>

<dl>
 <dt>{{jsxref("Number.EPSILON")}} {{experimental_inline}}</dt>
 <dd>O menor intervalo entre dois números representáveis.</dd>
 <dt>{{jsxref("Number.MAX_SAFE_INTEGER")}} {{experimental_inline}}</dt>
 <dd>O inteiro máximo seguro em JavaScript (2<sup>53</sup> -1).</dd>
 <dt>{{jsxref("Number.MAX_VALUE")}}</dt>
 <dd>O maior número representável positivo.</dd>
 <dt>{{jsxref("Number.MIN_SAFE_INTEGER")}} {{experimental_inline}}</dt>
 <dd>O inteiro mínimo seguro em JavaScript (-(2<sup>53</sup> -1)).</dd>
 <dt>{{jsxref("Number.MIN_VALUE")}}</dt>
 <dd>O número mínimo representável positivo - isto é, o número positivo mais próximo de zero (sem ser zero na verdade).</dd>
 <dt>{{jsxref("Number.NaN")}}</dt>
 <dd>Valor especial que não é número.</dd>
 <dt>{{jsxref("Number.NEGATIVE_INFINITY")}}</dt>
 <dd>Valor especial representando infinito negativo; retornado no "overflow".</dd>
 <dt>{{jsxref("Number.POSITIVE_INFINITY")}}</dt>
 <dd> Valor especial representando infinito; retornado no "overflow".</dd>
 <dt>{{jsxref("Number.prototype")}}</dt>
 <dd>Permite a adição de propriedades a um objeto Number.</dd>
</dl>

<div>{{jsOverrides("Function", "properties", "MAX_VALUE", "MIN_VALUE", "NaN", "NEGATIVE_INFINITY", "POSITIVE_INFINITY", "protoype")}}</div>

<h2 id="Methods" name="Methods">Methods</h2>

<dl>
 <dt>{{jsxref("Number.isNaN()")}} {{experimental_inline}}</dt>
 <dd>Determina se o valor passado é NaN.</dd>
 <dt>{{jsxref("Number.isFinite()")}} {{experimental_inline}}</dt>
 <dd>Determina se o tipo e o valor passado é um número finito.</dd>
 <dt>{{jsxref("Number.isInteger()")}} {{experimental_inline}}</dt>
 <dd>Determina se o tipo do valor passado é  inteiro.</dd>
 <dt>{{jsxref("Number.isSafeInteger()")}} {{experimental_inline}}</dt>
 <dd>Determina se o tipo do valor passado é um inteiro seguro (número entre -(2<sup>53</sup> -1) e 2<sup>53</sup> -1).</dd>
 <dt><s class="obsoleteElement">{{jsxref("Number.toInteger()")}} {{obsolete_inline}}</s></dt>
 <dd><s class="obsoleteElement">Usado para avaliar o valor passado e convertê-lo a um inteiro (ou infinito), mas foi removido.</s></dd>
 <dt>{{jsxref("Number.parseFloat()")}} {{experimental_inline}}</dt>
 <dd>O valor é o mesmo que {{jsxref("Global_Objects/parseFloat", "parseFloat")}} do objeto global.</dd>
 <dt>{{jsxref("Number.parseInt()")}} {{experimental_inline}}</dt>
 <dd>O valor é o mesmo que {{jsxref("Global_Objects/parseInt", "parseInt")}} do objeto global.</dd>
</dl>

<div>{{jsOverrides("Function", "methods", "isNaN")}}</div>

<h2 id="Number_instances" name="Number_instances">Instâncias<code> Number</code>  </h2>

<p>Toda instância <code>Number</code> herdam de {{jsxref("Number.prototype")}}. O objeto 'prototype' do construtor <code>Number</code> pode ser modificado para afetar todas as instâncias <code>Number</code>.</p>

<h3 id="Methods_of_number_instance" name="Methods_of_number_instance">Métodos</h3>

<div>{{page('/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/prototype', 'Methods')}}</div>

<h2 id="Examples" name="Examples">Exemplos</h2>

<h3 id="Example:_Using_the_Number_object_to_assign_values_to_numeric_variables" name="Example:_Using_the_Number_object_to_assign_values_to_numeric_variables">Exemplo: Usando o objeto <code>Number</code> para atribuir valores a variáveis numéricas</h3>

<p>O seguinte exemplo usa as propriedades do objeto <code>Number</code> para atribuir valores a várias variáveis numéricas:</p>

<pre class="brush: js">var biggestNum = Number.MAX_VALUE;
var smallestNum = Number.MIN_VALUE;
var infiniteNum = Number.POSITIVE_INFINITY;
var negInfiniteNum = Number.NEGATIVE_INFINITY;
var notANum = Number.NaN;
</pre>

<h3 id="Example:_Using_Number_to_convert_a_Date_object" name="Example:_Using_Number_to_convert_a_Date_object">Exemplo: Intervalo inteiro para <code>Number</code></h3>

<p>O seguinte exemplo mostra os valores inteiros mínimo e máximo que podem ser representados como objeto <code>Number</code> (para mais detalhes, referir-se ao padrão EcmaScript standard (EcmaScript standard), capítulo <em>8.5 O tipo de número (The Number Type</em>):</p>

<pre class="brush: js">var maxInt = 9007199254740992;
var minInt = -9007199254740992;
</pre>

<p>Ao analisar dados que foram serializados para JSON, valores inteiros que caem fora desse intervalo podem ser corrompidos quando o analisador JSON os converte ao tipo <code>Number</code>. Usando <code>String </code>em vez disso é uma possível alternativa para se evitar um resultado indesejado.</p>

<h3 id="Example:_Using_Number_to_convert_a_Date_object" name="Example:_Using_Number_to_convert_a_Date_object"><span class="hidden"> </span>Exemplo: Usando <code>Number para converter um objeto</code> <code>Date</code></h3>

<p>O exemplo a seguir converte o objeto <code>Date</code> para um valor numérico usando <code>Number como uma função</code>:</p>

<pre class="brush: js">var d = new Date("December 17, 1995 03:24:00");
print(Number(d));
</pre>

<p>Isto resulta em "819199440000".</p>

<h3 id="Converte_'string'_numérica_em_números">Converte 'string' numérica em números</h3>

<pre class="brush: js">Number('123')     // 123
Number('12.3')    // 12.3
Number('')        // 0
Number('0x11')    // 17
Number('0b11')    // 3
Number('0o11')    // 9
Number('foo')     // NaN
Number('100a')    // NaN
</pre>

<h2 id="Especificações">Especificações</h2>

<table class="standard-table">
 <tbody>
  <tr>
   <th scope="col">Especificação</th>
   <th scope="col">Situação</th>
   <th scope="col">Comentário</th>
  </tr>
  <tr>
   <td>Primeiro edição ECMAScript. Implementado em JavaScript 1.1</td>
   <td>Padrão</td>
   <td>definição inicial.</td>
  </tr>
  <tr>
   <td>{{SpecName('ES5.1', '#sec-15.7', 'Number')}}</td>
   <td>{{Spec2('ES5.1')}}</td>
   <td> </td>
  </tr>
  <tr>
   <td>{{SpecName('ES6', '#sec-number-objects', 'Number')}}</td>
   <td>{{Spec2('ES6')}}</td>
   <td>Novos métodos e propriedades adicionadas (EPSILON, isFinite, isInteger, isNaN, parseFloat, parseInt)</td>
  </tr>
 </tbody>
</table>

<h2 id="Browser_compatibility">Compatibilidade com navegadores</h2>

<p>{{ CompatibilityTable() }}</p>

<div id="compat-desktop">
<table class="compat-table">
 <tbody>
  <tr>
   <th>Configuração</th>
   <th>Chrome</th>
   <th>Firefox (Gecko)</th>
   <th>Internet Explorer</th>
   <th>Opera</th>
   <th>Safari</th>
  </tr>
  <tr>
   <td>Suporte básico</td>
   <td>{{ CompatVersionUnknown() }}</td>
   <td>{{ CompatVersionUnknown() }}</td>
   <td>{{ CompatVersionUnknown() }}</td>
   <td>{{ CompatVersionUnknown() }}</td>
   <td>{{ CompatVersionUnknown() }}</td>
  </tr>
 </tbody>
</table>
</div>

<div id="compat-mobile">
<table class="compat-table">
 <tbody>
  <tr>
   <th>Configuração</th>
   <th>Android</th>
   <th>Chrome for Android</th>
   <th>Firefox Mobile (Gecko)</th>
   <th>IE Mobile</th>
   <th>Opera Mobile</th>
   <th>Safari Mobile</th>
  </tr>
  <tr>
   <td>Suporte básico</td>
   <td>{{ CompatVersionUnknown() }}</td>
   <td>{{ CompatVersionUnknown() }}</td>
   <td>{{ CompatVersionUnknown() }}</td>
   <td>{{ CompatVersionUnknown() }}</td>
   <td>{{ CompatVersionUnknown() }}</td>
   <td>{{ CompatVersionUnknown() }}</td>
  </tr>
 </tbody>
</table>
</div>

<h2 id="See_also" name="See_also">Veja também</h2>

<ul>
 <li>{{jsxref("Global_Objects/NaN", "NaN")}}</li>
 <li>O objeto global {{jsxref("Global_Objects/Math", "Math")}}</li>
</ul>