Простое сложение в javascript: учимся складывать числа, строки и массивы. Операции в JavaScript Запись арифметических функции javascript

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

Кавычки

Строки в JavaScript должны быть заключены в кавычки. В JavaScript существует три вида кавычек: двойные (" "), одинарные (" ") и обратные (` `):

"Строка в двойных кавычках" "Строка в одинарных кавычках" `Строка в обратных кавычках`

Вид кавычек в начале и конце строки должен совпадать.

Строки могут состоять из нуля и более символов:

"" // Пустая строка "Строка" // Не пустая строка

Строки с двойными и одинарными кавычками ничем не отличаются между собой по функционалу - они могут содержать лишь текст и управляющие последовательности. А вот строки с обратными кавычками имеют более широкий функционал. Такие строки могут содержать так называемые подстановки , обозначаемые знаком доллара и фигурными скобками ${выражение} . Подстановки могут содержать любые произвольные выражения:

Let стр = "Мир!"; let стр2 = `Привет, ${стр}`; // Использование переменной в строке alert(стр2); // Привет, Мир! alert(`2 + 3 = ${2 + 3}.`); // 2 + 3 = 5.

Выражение, расположенное в подстановке (${...}) вычисляется, и его результат становится частью строки.

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

Let числа = `Числа: 1 2`; alert(числа); // Числа: // 1 // 2

Строки с обратными кавычками называются строками-шаблонами или шаблонными литералами .

Строки, заключённые в одни кавычки, могут содержать другие кавычки:

"одинарные "кавычки" и `обратные` внутри двойных" "а здесь "так" и `так`!" `а здесь "так" и "так"!`

Для удобства, большие строковые литералы можно разбивать на несколько строк, заканчивая каждую строку, кроме последней, символом \ :

Alert("это всё одна \ длинная \ строка"); // это всё одна длинная строка alert("это всё одна \ длинная \ строка"); // это всё одна длинная строка alert(`это всё одна \ длинная \ строка`); // это всё одна длинная строка

Кодировка символов строки

Вне зависимости от того, какая кодировка установлена для страницы, в JavaScript для строк всегда используется кодировка UTF-16.

В JavaScript строка - это неизменяемая, упорядоченная последовательность 16-битных значений, каждое из которых представляет символ Unicode. Для представления символов Unicode в JavaScript используется кодировка UTF-16. Символы включают в себя буквы, цифры, знаки пунктуации, специальные символы и пробельные символы.

Длина строки

Длина строки - это количество 16-битных значений (а не самих символов), содержащихся в ней. Длину строки содержит свойство length:

Alert("Привет".length); // 6

Символы, кодовые пункты которых не умещаются в 16 бит, обрабатываются в соответствии с правилами кодировки UTF-16 как последовательности из двух 16-битных значений. Это означает, что строка, имеющая длину, равную 2 (два 16-битных значения), на деле может представлять единственный символ:

Alert("a".length); // 1 alert("𝑒".length); // 2

Нумерация и доступ к символам строки

Как уже было сказано, строка представляет собой упорядоченную последовательность 16-битных значений, каждому из которых соответствует определённый символ. Нумерация 16-битных значений в строке начинается с нуля, т. е. первое 16-битное значение находится под индексом 0, второе - под индексом 1 и т. д. Индекс - это порядковый номер.

Получить символ строки (состоящий из одного 16-битного значения) можно с помощью индекса, заключённого в квадратные скобки [индекс] :

Let стр = "Привет"; alert(стр); // П alert(стр); // В

Чтобы с помощью индексов обратиться к символу, состоящему из двух 16-битных значений, нужно, используя конкатенацию, написать эти индексы так, чтобы в результате получилась последовательность из двух 16-битных значений:

Let стр = "𝑒"; alert(стр + стр); // "𝑒"

Строки неизменяемые

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

Так как строки неизменяемые, то методы, используемые для работы со строками, возвращают новые строки, а не изменяют ту строку, относительно которой они были вызваны:

Let стр = "Привет!"; alert(стр.toUpperCase()); // "HELLO" - новое возвращаемое методом значение alert(стр); // "hello" - первоначальная строка не изменена

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

Let стр = "Строка"; стр = стр.toUpperCase(); alert(стр); // "СТРОКА"

Управляющие последовательности

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

В таблице ниже представлены управляющие последовательности:

Последовательность Значение
\0 Символ NUL - пустой символ ("\u0000").
\t Горизонтальная табуляция ("\u0009").
\n Перевод на новую строку ("\u000A").
\b Возврат на одну позицию - то, что происходит при нажатии на клавишу backspace ("\u0008").
\r Возврат каретки ("\u000D").
\f Перевод страницы - очистка страницы ("\u000C").
\v Вертикальная табуляция ("\u000B").
\" Двойная кавычка ("\u0022").
\" Одинарная кавычка ("\u0027").
\\ Обратный слэш ("\u005C").
\xNN Номер символа из набора символов ISO Latin-1, заданный двумя шестнадцатеричными цифрами (N - шестнадцатеричная цифра 0-F). Например, "\x41" (это код буквы "A").
\uNNNN Номер символа из набора символов Unicode, заданный четырьмя шестнадцатеричными цифрами (N - шестнадцатеричная цифра 0-F). Например, "\u0041" (это код буквы "A"s).

Управляющие последовательности могут находиться в любом месте строки:

Alert("Греческая буква сигма: \u03a3."); // Греческая буква сигма: Σ. alert("Многострочная\nстрока") // Многострочная // строка alert("внутри используются \"двойные\" кавычки"); // внутри используются "двойные" кавычки

Если символ \ предшествует любому символу, отличному от приведённых в таблице, то он просто игнорируется интерпретатором:

Alert("\k"); // "k"

Символы Unicode, указываемые с помощью управляющей последовательности, можно использовать не только внутри строковых литералов, но и в идентификаторах:

Let a\u03a3 = 5; alert(a\u03a3); // 5

Конкатенация

Конкатенация - это объединение двух или более строк в одну большую. Объединение происходит с помощью оператора + (плюс). При конкатенации каждая последующая строка добавляется в конец предыдущей:

Var str1 = "Hello "; var str2 = "World!"; document.write(str1 + str2 + "
"); // "Hello World!" document.write(str1 + "World!"); Попробовать »

Значение любого типа, которое объединяется со строкой, будет неявно (автоматически) преобразовано в строку и далее будет произведена конкатенация.

Var str1 = "Hello "; alert(str1 + 1); // "Hello 1" alert(true + str1); // "trueHello" alert(str1 + NaN); // "Hello NaN"

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

Математические операции

JavaScript поддерживает все базовые математические операции:

Сложение :

Var x = 10; var y = x + 50;

Вычитание :

Var x = 100; var y = x - 50;

Умножение :

Var x = 4; var y = 5; var z = x * y;

Деление :

Var x = 40; var y = 5; var z = x / y;

Деление по модулю (оператор %) возвращает остаток от деления:

Var x = 40; var y = 7; var z = x % y; console.log(z); // 5

Результатом будет 5, так как наибольшее целое число, которое меньше или равно 40 и при этом делится на 7 равно 35, а 40 - 35 = 5.

Инкремент :

Var x = 5; x++; // x = 6

Оператор инкремента ++ увеличивает переменную на единицу. Существует префиксный инкремент, который сначала увеличивает переменную на единицу, а затем возвращает ее значение. И есть постфиксный инкремент, который сначала возвращает значение переменной, а затем увеличивает его на единицу:

// префиксный инкремент var x = 5; var z = ++x; console.log(x); // 6 console.log(z); // 6 // постфиксный инкремент var a = 5; var b = a++; console.log(a); // 6 console.log(b); // 5

Постфиксный инкремент аналогичен операции:

A = a + 1; // a++

Декремент уменьшает значение переменной на единицу. Также есть префиксный и постфиксный декремент:

// префиксный декремент var x = 5; var z = --x; console.log(x); // 4 console.log(z); // 4 // постфиксный декремент var a = 5; var b = a--; console.log(a); // 4 console.log(b); // 5

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

Var x = 10; var y = 5 + (6 - 2) * --x; console.log(y); //41

Операции присваивания

    Приравнивает переменной определенное значение: var x = 5;

    Сложение с последующим присвоением результата. Например:

    Var a = 23; a += 5; // аналогично a = a + 5 console.log(a); // 28

    Вычитание с последующим присвоением результата. Например:

    Var a = 28; a -= 10; // аналогично a = a - 10 console.log(a); // 18

    Умножение с последующим присвоением результата:

    Var x = 20; x *= 2; // аналогично x = x * 2 console.log(x); // 40

    Деление с последующим присвоением результата:

    Var x = 40; x /= 4; // аналогично x = x / 4 console.log(x); // 10

    Получение остатка от деления с последующим присвоением результата:

    Var x = 10; x %= 3; // аналогично x = x % 3 console.log(x); // 1, так как 10 - 3*3 = 1

Операторы сравнения

Как правило, для проверки условия используются операторы сравнения. Операторы сравнения сравнивают два значения и возвращают значение true или false:

    Оператор равенства сравнивает два значения, и если они равны, возвращает true, иначе возвращает false: x == 5

    Оператор тождественности также сравнивает два значения и их тип, и если они равны, возвращает true, иначе возвращает false: x === 5

    Сравнивает два значения, и если они не равны, возвращает true, иначе возвращает false: x != 5

    Сравнивает два значения и их типы, и если они не равны, возвращает true, иначе возвращает false: x !== 5

    Сравнивает два значения, и если первое больше второго, то возвращает true, иначе возвращает false: x > 5

    Сравнивает два значения, и если первое меньше второго, то возвращает true, иначе возвращает false: x < 5

    Сравнивает два значения, и если первое больше или равно второму, то возвращает true, иначе возвращает false: x >= 5

    Сравнивает два значения, и если первое меньше или равно второму, то возвращает true, иначе возвращает false: x 50 && percent < 12; console.log(result); //true

    Возвращает true, если хотя бы одна операция сравнения возвращают true, иначе возвращает false:

    Var income = 100; var isDeposit = true; var result = income > 50 || isDeposit == true; console.log(result); //true

    Возвращает true, если операция сравнения возвращает false:

    Var income = 100; var result1 = !(income > 50); console.log(result1); // false, так как income > 50 возвращает true var isDeposit = false; var result2 = !isDeposit; console.log(result2); // true

Операции со строками

Строки могут использовать оператор + для объединения. Например:

Var name = "Том"; var surname = "Сойер" var fullname = name + " " + surname; console.log(fullname); //Том Сойер

Если одно из выражений представляет строку, а другое - число, то число преобразуется к строке и выполняется операция объединения строк:

Var name = "Том"; var fullname = name + 256; console.log(fullname); //Том256

В конце напишем небольшую программу, которая продемонстрирует работу с операциями над переменными. Для этого определим следующую веб-страницу index.html:

JavaScript var sum = 500; // сумма вклада var percent = 10; // процент по вкладу var income = sum * percent / 100; // доход по вкладу sum = sum + income; // определяем новую сумму console.log("Доход по вкладу: " + income); console.log("Сумма вклада после первого года: " + sum);

В скрипте объявляются три переменных: sum, percent и income. Переменная income вычисляется по остальным двум переменным с помощью операций умножения и деления. И в конце ее значение суммируется с значением переменной sum.

В этой статье речь пойдет о том, что такое строки в JavaScript и методах работы с ними.

Строки — это просто группы символов, такие как « JavaScript », « Hello world! », « http://www.quirksmode.org » или даже « 14 ». Для программирования на JavaScript Вам необходимо знать, что такое строки и как с ними работать, т. к. использовать их придется очень часто. Многие вещи, такие как URL -страницы, значения CSS -параметров и элементов ввода форм — все является строками.

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

Основы работы со строками

Давайте рассмотрим основы работы со строками в JavaScript.

Использование кавычек

Когда Вы объявляете строки в JavaScript или работаете с ними, всегда заключайте их в одинарные или двойные кавычки. Этим Вы объясняете браузеру, что он имеет дело со строкой. Не смешивайте использование кавычек в коде, если Вы начали строку с одинарной кавычки, а закончили двойной, JavaScript не поймет, что Вы имели в виду. Как правило, я использую одинарные кавычки для работы со строками, так как двойные кавычки я решил использовать для HTML , а одинарные — для JavaScript. Конечно, Вы можете делать все по-другому, но я советую вам придумать подобное правило для себя.

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

Var a = "Hello world!"; var b = "I am a student.";

Сейчас мы объявили две переменные, « a » и « b », и присвоили им строковые значения. После этого мы можем с ними работать, но сначала решим одну проблему: допустим, я написал:

Var b = "I"m a student.";

Строка содержит в себе лишнюю одинарную кавычку, и JavaScript думает, что строка закончена и выводит сообщение об ошибке, не понимая, что следует дальше. Поэтому Вам нужно экранировать кавычку , сообщая браузеру, что её нужно рассматривать как символ, а не как окончание строки. Это осуществляется с помощью «обратного слеша» перед кавычкой:

Var b = "I\"m a student.";

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

Var b = "I\"m a "student".";

воспринимается без проблем. Двойные кавычки автоматически рассматриваются, как части строки, а не команды.

Встроенные функции

После определения строк можно начать их использование. Например, Вы можете соединить одну строку с другой , или взять из строки « b » подстроку, состоящую из второго—четвертого символов и вставить их в середину строки « a », или определить какой символ стоит двенадцатым в « a », сколько символов в « b », есть ли в них буква «q» и т. д.

Для этого Вы можете использовать встроенные функции, которые JavaScript предопределяет для каждой строки. Одна из них — «length» — возвращает длину строки. То есть если Вы хотите вычислить длину «Hello world!», напишите:

Var c = "Hello world!".length;

Ранее мы присвоили эту строку переменной « а ». Таким образом, Вы сделали переменную « a » строкой, поэтому к ней тоже применима функция «length», и следующая операция даст такой же результат:

Var c = a.length;

Запомните, что Вы можете использовать «length» для любой строки — это встроенная функция. Вы можете вычислить длину любой строки , например: « location.href » или « document.title » или объявленной Вами.

Ниже я представлю список распространенных встроенных методов и свойств.

Строки и числа

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

Var c = a + 12;

В некоторых языках программирования обработка такой строки приведет к ошибке. Всё же « a » — это строка, а «12» — число. Однако JavaScript пытается решить проблему, предполагая, что «12» — тоже строка. Таким образом « с » принимает значение « Hello world!12 ». Значит, если Вы используете «+» со строкой и числом, JavaScript пытается сделать из числа строку. Если же Вы применяете математические операции к строке, JavaScript пробует превратить её в число. При отсутствии возможности перевода строки в число (например, из-за наличия в ней букв), JavaScript возвращает NaN — «Not a Number — не является числом».

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

Число → строка

Для преобразования числа в строку введите:

Var c = (16 * 24) / 49 + 12; d = c.toString();

После этого Вы можете применять к « d » все строковые методы, а « c » все ещё содержит число.

Строка → число

Если Вы хотите преобразовать строку в число, сначала убедитесь, что она состоит только из символов 0—9 . Для этого я просто умножаю строку на 1 .

Var c = "1234"; d = c * 1;

Так как умножение производится только с числами, JavaScript превращает строку в число, если это возможно. В противном случае, результат — NaN .

Заметим, если написать:

Var c = "1234"; d = c + 0;

Результатом будет « 12340 », потому что JavaScript использует «+» для соединения строк, а не их сложения.

Строковые свойства и методы

Так что же мы можем делать со строками? Объединение — это особый случай, но все остальные команды (методы) могут использоваться с любой строкой с помощью конструкции:

Имя_строки.метод();

Список встроенных методов JavaScript для работы со строками Конкатенация — объединение строк

Во-первых, Вы можете объединить строки, сложив их вместе, вот так:

Document.write(a + b);

в результате получится: « Hello world!I am a student. ». Но, конечно же, Вы хотите, чтобы между предложениями был пробел. Для этого запишем код следующим образом:

Document.write(a + " " + b);

Так мы соединим три строки: « а », « " " » (один пробел) и « b », в итоге получив: « Hello world! I am a student. »

Вы можете использовать даже числа или вычисления, например:

Document.write (a + 3 * 3 + b);

Сейчас мы соединяем строку « а », затем результат выражения « 3 * 3 », рассматриваемый как строка, и « b », получая: « Hello world!9 I am a student. »

При использовании сложения нужно быть внимательным. Команда

Document.write (a + 3 + 3 + b);

соединяет 4 строки: « а », « 3 », « 3 » и « b », потому что «+» в данном случае означает «соединить строки», а не «сложить» и в результате: « Hello world!33 I am a student. ». Если Вы хотите сложить 3 и 3 перед созданием строки, используйте скобки.

Document.write (a + (3 + 3) + b);

Данное выражение соединяет строку « а », результат выражения « 3 + 3 » и « b », в итоге: « Hello world!6 I am a student. ».

indexOf

Один из самых широко используемых встроенных методов это «indexOf». Каждый символ имеет свой индекс, содержащий номер его позиции в строке. Заметим, что индекс первого символа — 0 , второго — 1 и т. д. Таким образом, индекс символа «w» в сроке « а » — 6 .

Используя «indexOf» мы можем вывести индекс символа. Напишите « .indexOf(" ") » после названия строки и вставьте искомый символ между кавычками. Например:

Var a = "Hello world!"; document.write(a.indexOf("w"));

возвратит 6 . Если символ встречается несколько раз, этот метод возвращает первое вхождение. То есть

Document.write(a.indexOf("o"));

возвратит 4 , потому что это индекс первой «o» в строке.

Вы также можете искать комбинацию символов. (Конечно, это тоже строка, но, чтобы избежать путаницы, я не буду называть её так). «indexOf» возвращает позицию первого символа комбинации. Например:

Document.write(a.indexOf("o w"));

тоже возвратит 4 , потому что это индекс «o».

Более того, возможен поиск символа после определенного индекса. Если Вы введете

Document.write(a.indexOf("o", 5));

то получите индекс первой «o», следующей за символом с индексом 5 (это пробел), то есть результат будет — 7 .

Если символ или комбинация не встречается в строке, «indexOf» возвратит « -1 ». Это, по сути, самое популярное применение «indexOf»: проверка существования определенной комбинации символов. Оно является ядром скрипта, определяющего браузер. Для определения IE Вы берете строку:

Navigator.userAgent;

и проверяете, содержит ли она « MSIE »:

If(navigator.userAgent.indexOf("MSIE") != -1) { //Какие-либо дествия с Internet Explorer }

Если индекс « MSIE » — не « -1 » (если « MSIE » встречается где-либо в строке), то текущий браузер — IE .

lastIndexOf

Также существует метод «lastIndexOf», который возвращает последнее вхождение символа или комбинации. Он действует противоположно «indexOf». Команда

Var b = "I am a student."; document.write(b.lastIndexOf("t"));

возвратит 13 , потому что это индекс последней «t» в строке.

charAt

Метод «charAt» возвращает символ, стоящий на указанной позиции. Например, когда Вы вводите

Var b = "I am a student."; document.write(b.charAt(5));

в результате получается « a », так как это символ на шестой позиции (помните, что индекс первого символа начинается с 0).

length

Метод «length» возвращает длину строки.

Var b = "I am a student."; document.write(b.length);

возвратит «15». Длина строки на 1 больше, чем индекс последнего символа.

split

« split » — это специальный метод, позволяющий разделить строку по определенным символам. Используется, когда результат необходимо заносить в массив, а не в простую переменную. Давайте разделим « b » по пробелам:

Var b = "I am a student." var temp = new Array(); temp = b.split(" ");

Теперь строка разбита на 4 подстроки, которые помещаются в массив « temp ». Сами пробелы исчезли.

Temp = "I"; temp = "am"; temp = "a"; temp = "student";

Метод «substring» используется для выделения части строки. Синтаксис метода: « .substring(первый_индекс, последний_индекс) ». Например:

Var a = "Hello world!"; document.write(a.substring(4, 8));

возвратит « o wo », от первой «o» (индекс 4) до второй (индекс 7). Заметьте, что «r» (индекс 8) не является частью подстроки.

Также можно написать:

Var a = "Hello world!"; document.write(a.substring(4));

Это даст целую подстроку « o world! », начиная от символа с индексом 4 и до конца строки.

substr

Также есть метод «substr», работающий немного по-другому. В качестве второго аргумента он использует не номер индекса, а количество символов. То есть

Document.write(a.substr(4, 8));

возвращает 8 символов, начиная от символа с индексом 4 («o»), то есть в результате получаем: « o world! »

toLowerCase и toUpperCase

Наконец, 2 метода, которые иногда могут Вам пригодиться: «toLowerCase» переводит всю строку в нижний регистр, а «toUpperCase» — в верхний.

Var b = "I am a student."; document.write(b.toUpperCase());

В результате получим « I AM A STUDENT. ».


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

Из предыдущего раздела кое-что о переменных Вам уже известно: создание переменных, вывод на экран их значений и правила работы с именами переменных - этот материал Вам знаком.

Приступаем к выполнению операций над переменными: сложение, вычитание, умножение и деление. И начнём, пожалуй, с чисел.

То есть с переменных, значениями которых являются числа.

// Создаём три переменных

var apple = 20 , orange = 30 , total_fruits;

// В переменную total_fruits заносим сумму двух переменных

total_fruits = apple + orange

document .write (total_fruits );

// Снова создаём три переменных

var apple = 20 , price = 17 , total_Sum;

// В переменную total_Sum заносим произведение двух переменных

total_Sum = apple * price

document .write (total_Sum );

Как видите в выполнении операций сложения и умножения над переменными, которые имею числовые значения, ничего сложного нет. С вычитанием и делением дело обстоит точно так же.

Обращаю Ваше внимание на то, что сейчас мы работали с числовыми значениями переменных.

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

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

Обратимся к примеру...

// Создаём четыре переменных

var name = " Иван", family = " Иванов", otch = " Ильич", FIO;

// В переменную FIO заносим сумму трёх переменных, как бы соединяем их значения.

// И добавляем тег

Который обозначит новый абзац

FIO = family + name + otch + "

document .write (FIO );

// Создаём три переменных.

var name = "Пётр", family = "Петров", otch = "Кузьмич";

// В переменную FIO также заносим сумму трёх переменных. И добавляем пробелы между переменными

var FIO = family + " " + name + " " + otch ;

document .write (FIO );

Иван Иванов Ильич

Петров Пётр Кузьмич

В приведённом примере мы соединили строковые значения трёх переменных при помощи операции сложения.

Чтобы фамилия, имя и отчество не получились слитыми: ИвановИванИльич , в первом случае пробелы были проставлены изначально - в значении каждой переменной, а во втором варианте пробелы были добавлены в итоговую переменную FIO при помощи всё той же операции сложения.

Фрагменты кода добавляются аналогично, что мы и сделали в первом случае: добавили тег "

" для того чтобы следующий вывод переменной FIO начинался с нового абзаца.

Теперь попробуем соединить переменную, содержащую число с переменной содержащей текст.

var myStreet = "Димитрова " , myHouse = 121 ;

Операторы: - (вычитание ), + (сложение ), * (умножение ) и / (деление ) работают точно так же, как и арифметические действия в математике. Оператор % (деление с остатком ) возвращает остаток от деления первого операнда на второй. Результат деления с остатком будет иметь тот же знак, что и первый операнд:

Alert(10 + 2); // 12 alert(10 - 2); // 8 alert(10 * 2); // 20 alert(10 / 2); // 5 alert(5 % 2); // 1 alert(-5 % 2); // -1

Оператор ** (возведение в степень ) имеет два операнда. Первый операнд является основанием степени, второй операнд - показателем степени, в результате оператор возвращает основание, возведённое в указанную степень:

2 ** 4; // 16

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

Унарные + (плюс) и - (минус)

Оператор + (унарный плюс ) преобразует значение своего операнда в число и возвращает преобразованное значение. При использовании с числовым операндом он не выполняет никаких действий:

Var x = +"5";

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

Var x = -5 + 3;

Унарные плюс и минус преобразуют операнды по тем же правилам, что и функция Number() .

Инкремент и декремент

Оператор ++ (инкремент ) увеличивает значение своего операнда на единицу. Если значение операнда не является числом, оператор автоматически преобразует его в число, увеличивает на единицу и возвращает результат, который присваивается обратно операнду.

Инкремент имеет две формы - постфиксную (оператор ставится после операнда) и префиксную (оператор ставится перед операндом). Если он используется в постфиксной форме, то сначала возвращается исходное значение операнда, и только затем значение операнда увеличивается на единицу.