Объект Number

Последнее обновление: 1.11.2015

Объект Number представляет числа. Чтобы создать число, надо передать в конструктор Number число или стоку, представляющую число:

var x = new Number(34);
var y = new Number('34');
document.write(x+y); // 68

Определения x и y в данном случае будут практически аналогичны.

Однако создавать объект Number можно и просто присвоив переменной определенное число:

var z = 34;

Объект Number предоставляет ряд свойств и методов. Некоторые его свойства:

  • Number.MAX_VALUE: наибольшее возможное число. Приблизительно равно 1.79E+308. Числа, которые больше этого значения, рассматриваются как Infinity

  • Number.MIN_VALUE: наименьшее возможное положительное число. Приблизительно равно 5e-324 (где-то около нуля)

  • Number.NaN: специальное значение, которое указывает, что объект не является числом

  • Number.NEGATIVE_INFINITY: значение, которое обозначает отрицательную неопределенность и которое возникает при переполнении. Например, если мы складываем два отрицательных числа, которые по модулю равны Number.MAX_VALUE. Например:

    var x = -1 * Number.MAX_VALUE
    var y = -1 * Number.MAX_VALUE
    var z = x + y;
    if(z===Number.NEGATIVE_INFINITY)
    	document.write("отрицательная неопределенность");
    else
    	document.write(z);
    
  • Number.POSITIVE_INFINITY: положительная неопределенность. Также, как и отрицательная неопределенность, возникает при переполнении, только теперь в положительную сторону:

    var x = Number.MAX_VALUE
    var y = Number.MAX_VALUE
    var z = x * y;
    if(z===Number.POSITIVE_INFINITY)
    	document.write("положительная неопределенность");
    else
    	document.write(z);
    

Некоторые основные методы:

  • isNaN(): определяет, является ли объект числом. Если объект не является числом, то возвращается значение true:

    var a = Number.isNaN(Number.NaN); // true
    var b = Number.isNaN(true); // false - new Number(true) = 1
    var c = Number.isNaN(null);  // false - new Number(null) = 0
    var d = Number.isNaN(25);  // false
    var e = Number.isNaN("54"); // false
    

    Но следующее выражение вернет false, хотя значение не является числом:

    var f = Number.isNaN("hello"); // false
    

    Чтобы избежать подобных ситуаций, лучше применять глобальную функцию isNaN:

    var f = isNaN("hello"); // true
    
  • parseFloat(): преобразует строку в число с плавающей точкой. Например:

    var a = Number.parseFloat("34.90"); // 34.9
    document.write(a);
    var b = Number.parseFloat("hello"); // NaN
    document.write(b);
    var c = Number.parseFloat("34hello"); // 34
    document.write(c);
    
  • parseInt(): преобразует строку в целое число. Например:

    var a = Number.parseInt("34.90"); // 34
    document.write(a);
    var b = Number.parseInt("hello"); // NaN
    document.write(b);
    var c = Number.parseInt("25hello"); // 25
    document.write(c);
    
  • toFixed(): оставляет в числе с плавающей точкой определенное количество знаков в дробной части. Например:

    var a =  10 / 1.44;
    document.write("До метода toFixed(): " + a + "<br/>");
    a = a.toFixed(2); // оставляем два знака после запятой
    document.write("После метода toFixed(): " + a + "<br/>");
    

    Вывод браузера:

    До метода toFixed(): 6.944444444444445
    После метода toFixed(): 6.94
    
Помощь сайту
WebMoney
  • P378451176208
  • Z280152397659
ЮMoney/Яндекс-Деньги
  • 410011174743222
PayPal
  • metanit22@mail.ru
Перевод на карту
  • Номер карты: 4048415020898850