JavaScript — язык программирования, созданный для исполнения кода на стороне клиента, в отличие от PHP, который предназначен для выполнения на стороне сервера. Эту фразу можно расшифровать как «код JavaScript выполняется на компьютере пользователя, тогда, когда тот загружает страницу».

Синтаксис Javascript достаточно близок к PHP или Cи. Для JavaScript характерна динамическая типизация, то есть типы всех переменных определяются непосредственно во время работы программы.

Hello, world!

Давайте встроим в простую html-страницу столь же простой JavaScript-файл и содержимое этого файла.

Код странички index.html:

<! DOCTYPE html>
<Html>
  <Head>
    <Script type = "text / javascript" src = "hello.js"> </ script>
    <Title> Hello, world! </ Title>
  </ Head>
  <Body>
    Body HTML here
  </Body>
</Html>

Файл hello.js содержит следующий код:

alert ("Hello, world!");

Если вы создадите эти два файла, сохраните их, а затем откроете в браузере страницу index.html, то увидите саму пустую страничку с текстом Body HTML here и всплывающее окно:

Немного о JavaScript - 1

Обратите внимание, каким образом мы подключили javascript-файл к html-странице:

<Script type = "text / javascript" src = "hello.js"> </ script>

При загрузке страницы подключённый файл автоматически выполняется браузером. Функция alert отвечает за показ окошка с текстовым сообщением.

Объявление переменных

Локальные переменные в JavaScript объявляют следующим образом:

var <имя переменной> = <значение переменной>

Глобальные переменные объявляют так же, но без слова var:

<имя переменной> = <значение переменной>

Примеры:

s = "CS50"; // глобальная переменная
var n = 3.14; // локальная переменная
var b = true; // локальная переменная

Чтобы изменить тип переменной, нужно присвоить ей новое значение:

b = "make b a string";


Циклы

Синтаксис циклов в JavaScript практически такой же, как у Cи:

for (/ * инициализация * / / * условие * / / * действие * /)
{
  / * Код * /
}
while (/ * условие * /)
{
  / * Код * /
}
do {
  / * Код * /
} while (/ * условие * /)


Объявление и вызов функций

Синтаксис объявления функций тоже напоминает Си:

function sum (x, y)
{
  return x + y;
}

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

var sum = function (x, y)
{
  return x + y;
}

Чтобы вызвать функцию, записываем её имя и аргументы в скобках. Например, таким образом:

a = sum (5, 3);


Массивы

Пример объявления пустого массива:

var arr = [];

Пример объявления инициализированного массива:

var arr2 = [ "Arrays", "in", JS];

Обращение к элементу массива:

var thirdElement = arr [2]; // thirdElement = "JS"

В JavaScript, как и в PHP, можно создать массив, в котором будут элементы различных типов:

var arr3 = [2.3, true, 5];

Также можно вставлять элементы в массив не по порядку:

arr3 [100] = "legit";

Объекты

Чтобы создать пустой объект в JavaScript, достаточно при объявлении переменной указать пустые фигурные скобки:

var emptyObject = {};

Новые свойства или поля объекта можно создать двумя способами:

emptyObject [ "newProperty"] = "newValue"; // Первый способ
emptyObject.otherNewProperty = "otherNewValue"; // Второй способ

Доступ к полям объекта также можно получить двумя путями:

alert (emptyObject.otherNewProperty)
alert (emptyObject [ "otherNewProperty"]);

При объявлении массива, можно сразу задать в нем поля:

var CS50 = {
  <Имя поля> <значение>,
  "Course": "CS50",
  "Instructor": "David J. Malan '99",
  "Tfs": [ "R.J.", "Ben", "Pat", "Chris"],
  "Psets": 8,
  "Taped": true
};

Пример создания массива объектов и доступа к этим объектам:

var cottage = [
  {Name: "James", house: "Winthrop"},
  {Name: "Molly", house: "Cabot"},
  {Name: "Carl", house: "Kirkland"}
];
// Цикл для доступа к элементам массива

for (var i = 0; i < cottage.length; i ++)
{
alert (cottage [i] .name)
}