Выбрать главу

1.1 Базовый JavaScript

Этот раздел представляет собой обзор языка JavaScript, а также обзор первой части этой книги. После этой вводной главы мы опустимся на самый нижний уровень JavaScript: в главе 2 «Лексическая структура» будут описаны основные лексические конструкции JavaScript, такие как комментарии, точки с запятой и набор символов Юникода. В главе 3 «Типы данных, значения и переменные» мы начнем рассматривать более интересные темы: здесь будут описаны переменные JavaScript и значения, которые можно присваивать этим переменным. Ниже приводится пример программного кода, иллюстрирующий предмет обсуждения этих двух глав:

// Все, что следует за двумя символами слэша, является комментарием.

// Внимательно читайте комментарии: они описывают программный код JavaScript.

// Переменная - это символическое имя некоторого значения.

// Переменные объявляются с помощью ключевого слова var:

var х; // Объявление переменной с именем х.

// Присваивать значения переменным можно с помощью знака =

х = 0;             // Теперь переменная х имеет значение 0

х                  // => 0: В выражениях имя переменной замещается ее значением.

// JavaScript поддерживает значения различных типов

х = 1;             // Числа.

х = 0.01;          // Целые и вещественные числа представлены одним типом,

х = "hello world"; // Строки текста в кавычках,

х = 'JavaScript';  // Строки можно также заключать в апострофы,

х = true;          // Логические значения,

х = false;         // Другое логическое значение.

х = null;          // null - особое значение, обозначающее "нет значения",

х = undefined;     // Значение undefined подобно значению null.

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

// Наиболее важным типом данных в JavaScript являются объекты.

// Объект - это коллекция пар имя/значение или отображение строки в значение.

var book = {           // Объекты заключаются в фигурные скобки.

  topic: "JavaScript", // Свойство "topic" имеет значение "JavaScript",

  fat: true            // Свойство "fat" имеет значение true.

};                     // Фигурная скобка отмечает конец объекта.

// Доступ к свойствам объектов выполняется с помощью . или []:

book.topic                // => "JavaScript"

book["fat"]               // => true: другой способ получить значение свойства,

book.author = "Flanagan": // Создать новое свойство присваиванием,

book.contents = {};       // {} - пустой объект без свойств.

// JavaScript поддерживает массивы (списки с числовыми индексами) значений:

var primes = [2, 3, 5, 7]; // Массив из 4 значений, ограничивается [ и ].

primes[0]                  // => 2: первый элемент (с индексом 0) массива,

primes.length              // => 4: количество элементов в массиве.

primes[primes.length-1]    // => 7: последний элемент массива.

primes[4] = 9:             // Добавить новый элемент присваиванием.

primes[4] = 11;            // Или изменить значение имеющегося элемента.

var empty = [];            // [] - пустой массив без элементов.

empty.length               // => О

// Массивы и объекты могут хранить другие массивы и объекты:

var points = [             // Массив с 2 элементами.

  {х:0, у:0},              // Каждый элемент - это объект.

  {х: 1, у: 1}

];

var data = { // Объект с 2 свойствами

  trialclass="underline" [[1.2], [3.4]],  // Значение каждого свойства - это массив.

  trial2: [[2,3]. [4,5]]   // Элементами массива являются массивы.