На нашем сайте мы используем cookie для сбора информации технического характера и обрабатываем IP-адрес вашего местоположения. Продолжая использовать этот сайт, вы даете согласие на использование файлов cookies. Здесь вы можете узнать, как мы пользуемся файлами cookies.
Я согласен
логотип upread.ru

Особенности чисел в JavaScript



Иногда JavaScript называют наиболее недооцененным языком программирования в мире. Он часто высмеивается, называется игрушечным, но под его слоем обманчивой простоты скрывается мощная функциональность полноценного языка программирования. На JavaScript в настоящее время разрабатывается невероятное количество приложений; глубокое знание этой технологии является важным навыком для любого мобильного, веб-разработчика и даже разработчика программ для десктопа. В этой статье мы поговорим о числах в JS.

У вас может возникнуть вопрос, а что такого: числа и есть числа. Так и не так: есть немало интересного, специфичного именно для данного языка. Итак, числа в JavaScript.

Числа в JavaScript имеют "двойной точности 64-битный формат IEEE 754", в соответствии со спецификацией. Это имеет некоторые интересные последствия. Нет такого понятия, как целое число в JavaScript, так что вы должны быть немного осторожным с вашей арифметикой, если вы привыкли к математике в C или Java.

Кроме того, надо следить за такими вещами, как:

0,1 + 0,2 == +0,30000000000000004
На практике, целочисленные значения обрабатываются как 32-разрядные целые числа, и в некоторых реализациях даже хранятся так, пока не просят выполнить инструкции, которые затрагивают именно количество, а не на 32-разрядное целое число. Это может быть важно для побитовых операций.

Поддерживаются стандартные арифметические операторы, включая сложение, вычитание, модуль (или остаток) и так далее. Есть также встроенный объект, называемый Math, который предоставляет возможность работы с расширенными математическими функциями и константами:

Math.sin (2.5);
var sc= Math.PI *R*R; 
Вы можете преобразовать строку в целое число, используя встроенную функцию ParseInt (). При этом за основу берется необязательный второй аргумент:

ParseInt ( "1988", 10); // 1988
ParseInt ( "011", 10); // 11
В старых браузерах, строки, начинающиеся с "0" предполагаются в восьмеричном формате, но это было прекращено примерно в 2013 году. Если вы не уверены в вашем формате строки, вы можете получить удивительные результаты на этих старых браузерах:

ParseInt ( "010"); // 8
ParseInt ( "0x10"); // 16
Здесь мы видим, функция ParseInt () рассматривать первую строку как восьмеричную, благодаря нулю на первом месте, а вторая строка как шестнадцатеричная в связи с "0x".Кстати, шестнадцатеричная запись по-прежнему на месте; только восьмеричная была удалена из современных браузеров.

Если вы хотите, чтобы преобразовать двоичное число в целое число, просто измените второй аргумент:

ParseInt ( "11", 2); // 3
Стоит отметить, что функция parseInt() парсит строку до тех пора, пока есть корректные символы, как только доходит до того, который не является числовым форматом, то уже возвращает это значение включительно.

В одной из своих предыдущих заметок я уже писал о NaN – правда в связи с языком си шарп. В JS тоже есть NaN (сокращение от "Not a Number") – получить его можно, если попробовать распарсить строку, которая точно не число:

parseInt("прювейт!", 10); // NaN
Интересно, что любая операция с этим «не числом» всегда будет возвращать его:

NaN - 101; // NaN
Интересно, что в JavaScript есть два типа бесконечности: положительная и отрицательная, то есть со знаком плюс и минус: Infinity и – Infinity. Таким образом, даже такая простая тема как числа в языке JavaScript обладает некоторыми нюансами. Напоследок замечу, что, несмотря на то, что js имеет возможность принимать и отдавать данные – это все же язык сценариев, который изначально спроектирован так, чтобы запускаться в какой-либо среде, то есть у него нет специальных операторов ввода-вывода, как в других ЯП. Вы привыкли видеть его работу в своем браузере, но на самом деле его можно запустить и в фотошопе и в Unity3D и даже на сервере, к примеру, node.js.



Автор этого материала - я - Пахолков Юрий. Я оказываю услуги по написанию программ на языках Java, C++, C# (а также консультирую по ним) и созданию сайтов. Работаю с сайтами на CMS OpenCart, WordPress, ModX и самописными. Кроме этого, работаю напрямую с JavaScript, PHP, CSS, HTML - то есть могу доработать ваш сайт или помочь с веб-программированием. Пишите сюда.



тегистатьи IT, javascript, особенности





Отправляя сообщение я подтверждаю, что ознакомлен и согласен с политикой конфиденциальности данного сайта.




Урок 1. История PHP
Баланс и DRY (Don't Repeat Yourself)


© upread.ru 2013-2022
При перепечатке активная ссылка на сайт обязательна.
Задать вопрос
письмо
Здравствуйте! Вы можете задать мне любой вопрос. Если не получается отправить сообщение через эту форму, то пишите на почу up777up@yandex.ru
Отправляя сообщение я подтверждаю, что ознакомлен и согласен с политикой конфиденциальности данного сайта.