Здравствуйте, уважаемые посетители моего скромного блога для начинающих вебразработчиков и web мастеров ZametkiNaPolyah.ru. Продолжим сегодня рубрику заметки по JavaScript, в которой я уже успел рассмотреть способы изменения HTML документа при помощи JavaScript, то есть, какие средства есть у JavaScript для модификации HTML страниц. Сегодня я бы хотел поговорить о типах данных JavaScript и значениях JavaScript. Тема данной публикации – типы данных JavaScript.

Ни для кого не секрет, что у каждого языка есть различные типы данных и обрабатываются машиной они по-разному. У PHP имеются одни типы данных, а например, у СУБД MySQL другие типы данных.

Типы данных JavaScript условно можно разделить на две группы: простые данные и сложные данные. К простым данным можно отнести: числа, строки, логические значения, значение null, значения undefined. К сложным данным относятся: JavaScript  функции, JavaScript объекты, JavaScript массивы, объекты Date JavaScript, регулярные выражения JavaScript, объекты Error JavaScript.

Типы данных JavaScript. Что такое данные и что такое значения JavaScript.

Я думаю, ни для кого не секрет, что любая программа использует какие-либо значения, такие как числа (1, 1.1, -1, 3.14), строки (“a”, “Привет мир!” и т.д.) и другие типы данных. Значения, с которыми может работать и обрабатывать язык программирования называются типами данных языка, в нашем случае типы данных языка JavaScript. А поддерживаемый набор типов данных языка – это одна из самых важных его характеристик.

Если говорить более точно, то в JavaScript данные делятся на три типа. Первый тип данных JavaScript – элементарный тип данных, к нему относятся числа, строки и значения логической истинности (true и false).

Второй тип данных JavaScript – тривиальные типы данных, к тривиальным данным JavaScript относятся два значения null и undefined.

Третий тип данных JavaScript – составной тип данных JavaScript или иначе его называют объект JavaScript. Эти названия равносильны и вы их можете встретить в литературе или на сайтах посвященных языку JavaScript. Любой объект JavaScript представляет собой набор значений, значения могут быть различным и различно упорядоченными. Обычно в JavaScript набор таких значений называют коллекция JavaScript или коллекция значений JavaScript.

JavaScript коллекции могут состоять из простых значений, таких как строки или числа, а могут состоять и из составных значений, например, из других объектов. JavaScript объекты делятся на две большие группы – JavaScript массивы и JavaScript объекты.

Массивы JavaScript – представляются как упорядоченная коллекция значений, в которой все элементы коллекций пронумерованы. Хотя в языке JavaScript вы и не сможете создать двумерный массив (матрицу) напрямую, вы можете создать массив, в котором каждый элемент массива будет являться массивом.

Объекты JavaScript – это неупорядоченная JavaScript коллекция, в которой у каждого элемента есть имя или по-другому коллекция именованных значений. Объекты, как и массивы, могут состоят из других объектов или других массивов.

Объекты и массивы – это по сути один и тот же тип данных, но ведут он себя различным образом, поэтому-то их и следует разделять.

В JavaScript имеется специальный тип объектов, его называют функция, да, функция в JavaScript является объектом!

JavaScript функция – это объект, объект в котором находится определенный код, выполняющий то или иное действия, не хотел использовать слово «функцию». Хоть функция и является JavaScript объектом, но синтаксис у нее особенный, а назначение не схоже с массивами и объектами. Функция, грубо говоря, это программа внутри программы, ее предназначение – уменьшить объем кода, так как функцию можно написать один раз, а затем использовать ее несколько раз.

Использование функции называется вызовом. Вызывать функцию можно сколько угодно раз и где угодно. В языке JavaScript имеется несколько специальных видов объектов. Их называют классами объектов.

Класс объекта Date JavaScript – представляет собой объект, в котором хранится даты и способ отображения даты.

Класс объекта RegExp JavaScript – является объектом, в котором хранятся регулярные выражения JavaScript. Регулярные выражения – это очень мощное средство для поиска по шаблону и реализуют операции поиска и замены.

Класс объекта Error JavaScript – это объект, в котором хранятся JavaScript ошибки. Ошибки JavaScript бывают двух видов: синтаксические ошибки и ошибки времени выполнения, все эти ошибки могут возникать во время исполнения JavaScript программ.

Далее мы вкратце поговорим о каждом типе данных JavaScript.

Типы данных JavaScript. JavaScript число.

Что такое число, нам всем объясняли на уроках математике в начальной школе. Для нас важно, что число – это основной тип данных в языке JavaScript. Еще для нас важно то, что JavaScript без разницы целое это число или это вещественное значение.

Поэтому я не буду пояснять, какие числа называют целыми, а какие числа называют вещественными. Число, которое находится в коде программы JavaScript – числовой литерал. В JavaScript числа могут быть представлены, как в десятичной системе счисления, так и в шестнадцатеричной, некоторые реализации языка JavaScript позволяют представлять числа в восьмеричной системе счисления.

Работать с числами в JavaScript можно по разному, можно выполнять простые арифметические действия (сложение, вычитание, деление и умножение). В языке JavaScript имеется большое количество математических функций, которые позволяют выполнять с числами более сложные операции.

Также числа можно преобразовывать в любой другой тип данных JavaScript от того какое число преобразуется зависит результат операции преобразования.

В JavaScript имеются специальные числовые значения, которые предназначены для специальных ситуаций, например, деление на ноль или ситуация, в которой вещественное число превышает самое большое значение числа, которое можно представить в JavaScript.

Типы данных JavaScript. JavaScript строка.

Строка JavaScript – это последовательность Unicode-символов(буквы, числа, знаки препинания и др.), которая заключается в кавычки (одинарные или двойные зависит от разработчика). Строка JavaScript – это тип данных, который служит для представления текста. Но, в JavaScript нет символьного типа данных, как в C или Java, для записи одиночного символа используется строка единичной длины. Обратите внимание, в версиях JavaScript, которые старее версии 1.3 были доступны символы кодировки ASCII и Latin-1, а в JavaScript 1.3 доступны все Unicode символы, для обратной совместимости используются управляющие последовательности JavaScript.

Управляющая последовательность JavaScript – это символ обратного слэша(\) написанный вместе с каким-либо другим символом, когда интерпретатор JavaScript встречает управляющую последовательность он формирует какой-то закодированный символ, например, последовательность \n – это перенос строки.

В JavaScript можно работать со строками различным образом. Первое что можно делать со строками – это складывать их, такая операция называется конкатенация строк.

В JavaScript можно определить длину строки. Средствами JavaScript можно узнать последний символ строки. Из строки можно извлечь первый символ или любой другой символ строки. Строки можно преобразовывать в любые другие типы данных, результат преобразования будет зависеть от того пустая строка преобразуется или не пустая.

Типы данных JavaScript. Логические значения JavaScript.

Логический тип данных в JavaScript, как и в других языках программирования имеет только два значения true и false. Логический тип данных позволяет проверить истинность утверждения истинно оно или ложно.

Обычно применяется при сравнении вместе с оператором условия или при создание циклов JavaScript.

Логические значения могут быть преобразованы в любой другой тип данных JavaScript, результат преобразования зависит от   того, какое значение будет преобразовываться.

Типы данных JavaScript. Функции JavaScript.

Да, функции в JavaScript являются типом данных. Функция – это небольшой фрагмент кода, который написан в программе, либо предопределен в языке программирования, код функции еще иногда называют телом функции. Функции служат для уменьшения кода программы. Код функции пишется один раз, а затем эта функция может вызываться много раз на всем в любом месте программы.

JavaScript функции могут передаваться параметры или как их еще называют аргументы, в качестве аргумента в JavaScript могут выступать как переменные, так и массивы, объекты и другие функции.

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

Функция может являться свойством объекта, в этом случае функцию называют методом объекта. Методы, классы и объекты – делают язык JavaScript объектно-ориентированным.

Типы данных JavaScript. Объекты JavaScript. Ассоциативные массивы JavaScript.

Объекты JavaScript – это коллекции значений, у каждого значения из коллекции есть имя, каждое значение коллекции называют свойством JavaScript объекта. Чтобы обратиться к свойству объекта: нужно указать имя объекта, затем оператор точка, а затем уже имя свойство.

Например, у нас есть объект point, у которого есть координаты x и y, координаты точки являются ее свойствами, к координатам надо как-то обращаться.

[php]

point.x;

point.y;

[/php]

Свойства JavaScript объектов могут быть представлены любым типом данных: объекты, числа, строки функции и т.д.

Если функция JavaScript выступает как свойство объекта, то ее называют методом объекта. Например, document.write (), document – это JavaScript объект, а write () – это метод объекта document. Обратите внимания: имя метода совпадает с именем свойства JavaScript объекта.

Ассоциативные массивы JavaScript – это JavaScript объекты, у которых произвольные значения ассоциируются с произвольными строками, естественно, что все ассоциации проводит человек. Синтаксис ассоциативных массивов отличается от синтаксиса объектов. Имя свойства ассоциативного массива заключается в квадратные скобки и в кавычки. Предыдущий пример будет выглядеть так:

[php]

point[“x”];

point[“y”];

[/php]

Таким образом, можно получить доступ к элементам ассоциативного массива.

JavaScript объекты можно создать при помощи специальных функций-конструкторов, например функция new Object:

[php]

var point = new  Object ();

point.x=1;

point.y=2;

[/php]

Объекты JavaScript можно преобразовывать в любые другие типы данных, но преобразования объектов – это отдельная тема. Объектные литералы JavaScript имеют особый синтаксис, и в одной из следующих публикаций я затрону эту тему.

Типы данных JavaScript. Массивы JavaScript.

Массивы JavaScript – это объекты, представляют собой коллекцию значений, различного типа данных, массивы отличаются от объектов тем, что в массиве каждое значение пронумеровано, а в объекте каждое значение имеет имя. Обращаться к значениям массива можно указывая в квадратных скобках его порядковый номер, индексы массивов начинаются с нуля.

[php]

mas[i];

[/php]

Таким образом, мы можем обратиться к i-ому элементу массива mas. Каждый отдельный элемент массива может содержать любой тип данных, в том числе массивы и объекты. За счет этого факта можно создать массив массивов и создавать двумерные массивы или числовые матрицы. Поскольку JavaScript слаботипизированный язык программирования, то каждый элемент массива может содержать отличные от других элементов тип данных.

Массивы, как и объекты можно создавать, при этом размер JavaScript массива(количество элементов в массиве) при его создание указывать не надо, за счет этого свойства можно всегда добавить или удалить элементы JavaScript массива.

Типы данных JavaScript. Значение undefined и null в JavaScript.

Значение null в JavaScript – это специальное значение, оно отличается от значение null в других языках программирования. Null в языках C, Java и пр. равно 0, в то время, как в языке JavaScript значение null может быть преобразовано в 0. Если JavaScript переменная имеет значение null, то это означает, что в переменной ничего не хранится.

Если преобразовать null в логический тип данных, то оно примет значение false. Если значение null преобразовать в числовой тип данных, то оно примет значение 0.

Значение undefined в JavaScript – это специальное значение, undefined, это не то же самое, что и null. Значение undefined имеют объявленные переменные, которым еще не присвоено значение или свойства объекта, которые еще не существуют.

Типы данных JavaScript. Классы объектов в JavaScript. Объекты Date в JavaScript. Объекты Error в JavaScript.

Объекты Date в JavaScript – это класс объектов JavaScript, который предназначен для хранения и отображения даты и времени. Объект Date в JavaScript – это отдельный тип данных. Объект Date создается с помощью оператора new и конструктора Date ().

[php]

var time = new Date ();

[/php]

У объекта Date, как и у любого JavaScript объекта есть методы, с помощь которых можно устанавливать и отображать различные значения даты и времени. Дату и время в JavaScript можно преобразовывать в строку.

Объекты Error в JavaScript – это класс объектов JavaScript. Классы Error служат для представления ошибок (синтаксические ошибки, ошибки времени исполнения), обратите внимания: сюда не входят логические ошибки.

При возникновение ошибки в коде JavaScript программы интерпретатор обратится к одному из классов Error для оповещения пользователя об ошибке. У любого объекта Error есть свойство message, в котором хранится код ошибки и сообщение о ошибке(сообщение зависит от реализации языка JavaScript).

Типы объектов ошибок в JavaScript: Error, EvalError, RangeError, ReferenceError, SyntaxError, TypeError, URIError.

Регулярные выражения в JavaScript.

Регулярные выражения в JavaScript — это способ описания текстовых шаблонов. Регулярные выражения в JavaScript — служат для поиска и замены текстовых соответствий. Если вы захотите узнать более подробно о синтаксисе регулярных выражений JavaScript, то можете почитать документацию языка Perl.

Регулярные выражения в JavaScript представлены объектом RegExp, который создается конструктором RegExp (). 

Объекты RegExp в JavaScript имеют синтаксис литералов JavaScript и поэтому они могут создаваться непосредственно в коде JavaScript программы, в отличие от объекта Date. Более подробно о регулярных выражениях в JavaScript я постараюсь рассказать в одной из следующих публикаций.

На этом всё, спасибо за внимание, надеюсь, что был хоть чем-то полезен и до скорых встреч на страницах блога для начинающих вебразработчиков и вебмастеров ZametkiNaPolyah.ru

Возможно, эти записи вам покажутся интересными


Выберете удобный для себя способ, чтобы оставить комментарий

This article has 5 comments

  1. Sopsan Reply

    Искал JavaScript массивы и что-нибудь про них, но наткнулся на вашу статью, а по подробней нету ничего?!

    • Storyte11er Reply

      Не сразу, но точно появится публикация JavaScript массивы, в которой я постараюсь описать сами массивы и работу с JavaScript массивами, пока к сожалению такой публикации нет.

  2. Марат Reply

    Зачем столько текста и времени уделять типам данных в JavaScript? Не лучше ли сразу показывать какие-нибудь примеры связанные с web? И не мусолить про базовый JavaScript и все эти типы данных, оперторы, языковые конструкции, столько времени зря тратить! Нигде не могу найти то, что мне нужно все пишут, но ничего нет!!!

    • Кирилл Reply

      Марат, а зачем вы потратили столько времени на написание данного комментария, вы бы могли продолжить серфить и найти полезную для себя информацию, а вы так не экономно расходуете время (целых 5 минут на комментарий). Если бы вы хотя бы прочитали публикацию, хотя бы по диагонали, то нашли бы информацию о том, что поддерживаемый тип данных того или иного языка — это основа языка, которую знать необходимо, нет данных — нет языка программирования, пусть и такого высокоуровневого языка, как JavaScript, поэтому типы данных нужно знать и нужно знать, как эти типы данные преобразуются и обрабатываются, наверное, логично то, что в рубрике про JavaScript (язык программирования), я написал про типы данных данных JavaScript.

  3. ROGUE_BEARD Reply

    У Вас в тексте ошибка. Вы перепутали тривиальные и элементарные типы. «Если говорить более точно, то в JavaScript данные делятся на три типа. Первый тип данных JavaScript – элементарный тип данных, к нему относятся числа, строки и значения логической истинности (true и false).

    Второй тип данных JavaScript – тривиальные типы данных, к тривиальным данным JavaScript относятся два значения null и undefined.»

    Надо так:

    Если говорить более точно, то в JavaScript данные делятся на три типа. Первый тип данных JavaScript – тривиальный тип данных, к нему относятся числа, строки и значения логической истинности (true и false).

    Второй тип данных JavaScript – элементарные типы данных, к элементарным данным JavaScript относятся два значения null и undefined.

    Слово элементарные само за себя говорит.

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Loading Disqus Comments ...