0 added
0 removed
Original
2026-01-01
Modified
2026-03-10
1
<p>В этой статье мы поговорим об операторах сравнения в языке программирования JavaScript и отдельное внимание уделим тому, как сравнивать строки. Также вы узнаете, почему строчная "a" не равна заглавной "A".</p>
1
<p>В этой статье мы поговорим об операторах сравнения в языке программирования JavaScript и отдельное внимание уделим тому, как сравнивать строки. Также вы узнаете, почему строчная "a" не равна заглавной "A".</p>
2
<p>Большинство операторов сравнения, используемых в JS, нам хорошо известны ещё из математики. Впрочем, операторы знакомы всем, кто имеет даже скромный опыт программирования на любых языках: - операторы "больше" и "меньше": a > b, a < b; - операторы "больше либо равно", "меньше либо равно": a >= b, a <= b; - оператор "равно": a == b. Не забудьте, что в программировании оператор "равно" - это двойной знак равенства. Одинарное равно имеет оператор присваивания: a = b; - оператор "не равно". В школьной алгебре это ≠. В JavaScript, как и других языках, при написании оператора "равно" пишут равно и восклицательный знак: a != b.</p>
2
<p>Большинство операторов сравнения, используемых в JS, нам хорошо известны ещё из математики. Впрочем, операторы знакомы всем, кто имеет даже скромный опыт программирования на любых языках: - операторы "больше" и "меньше": a > b, a < b; - операторы "больше либо равно", "меньше либо равно": a >= b, a <= b; - оператор "равно": a == b. Не забудьте, что в программировании оператор "равно" - это двойной знак равенства. Одинарное равно имеет оператор присваивания: a = b; - оператор "не равно". В школьной алгебре это ≠. В JavaScript, как и других языках, при написании оператора "равно" пишут равно и восклицательный знак: a != b.</p>
3
<h2>Логический тип результата сравнения</h2>
3
<h2>Логический тип результата сравнения</h2>
4
<p>Как и другие операторы, операторы сравнения тоже возвращают значение. В нашем случае у этого значения логический тип, а именно:</p>
4
<p>Как и другие операторы, операторы сравнения тоже возвращают значение. В нашем случае у этого значения логический тип, а именно:</p>
5
<p>• true - значит "истина". • false - значит "ложь".</p>
5
<p>• true - значит "истина". • false - значит "ложь".</p>
6
<p>К примеру:</p>
6
<p>К примеру:</p>
7
alert( 2 > 1 ); // true (верно) alert( 2 == 1 ); // false (неверно) alert( 2 != 1 ); // true (верно)<p>Кстати, у нас есть возможность присвоить результат сравнения какой-нибудь переменной:</p>
7
alert( 2 > 1 ); // true (верно) alert( 2 == 1 ); // false (неверно) alert( 2 != 1 ); // true (верно)<p>Кстати, у нас есть возможность присвоить результат сравнения какой-нибудь переменной:</p>
8
let result = 5 > 4; // результат сравнения мы присвоим переменной result alert( result ); // true<h2>Сравнение строк в JavaScript</h2>
8
let result = 5 > 4; // результат сравнения мы присвоим переменной result alert( result ); // true<h2>Сравнение строк в JavaScript</h2>
9
<p>Иногда нужно определить, является ли одна строка больше, чем другая. В языке JavaScript применяется "алфавитный" либо "лексикографический" порядок. Иначе говоря, сравнение строк осуществляется посимвольно.</p>
9
<p>Иногда нужно определить, является ли одна строка больше, чем другая. В языке JavaScript применяется "алфавитный" либо "лексикографический" порядок. Иначе говоря, сравнение строк осуществляется посимвольно.</p>
10
<p>Простой пример сравнения строк:</p>
10
<p>Простой пример сравнения строк:</p>
11
alert( 'Я' > 'А' ); // true alert( 'Ком' > 'Код' ); // true alert( 'Сонник' > 'Сон' ); // true<p>А вот алгоритм сравнения 2-х строк, который является весьма простым: 1. Поначалу происходит сравнение первых символов строк. 2. В случае, если 1-й символ первой строки больше или меньше 1-го символа второй строки, 1-я строка будет больше (или, соответственно, меньше), чем вторая строка. 3. Если же 1-е символы будут равны, происходит сравнение вторых символов строк. 4. Согласно алгоритму, сравнение продолжается до тех пор, пока одна из строк не закончится. 5. В случае, когда обе строки заканчиваются одновременно, эти строки равны. Или же, большей будет считаться та строка, которая длиннее.</p>
11
alert( 'Я' > 'А' ); // true alert( 'Ком' > 'Код' ); // true alert( 'Сонник' > 'Сон' ); // true<p>А вот алгоритм сравнения 2-х строк, который является весьма простым: 1. Поначалу происходит сравнение первых символов строк. 2. В случае, если 1-й символ первой строки больше или меньше 1-го символа второй строки, 1-я строка будет больше (или, соответственно, меньше), чем вторая строка. 3. Если же 1-е символы будут равны, происходит сравнение вторых символов строк. 4. Согласно алгоритму, сравнение продолжается до тех пор, пока одна из строк не закончится. 5. В случае, когда обе строки заканчиваются одновременно, эти строки равны. Или же, большей будет считаться та строка, которая длиннее.</p>
12
<p>Рассмотрим наши примеры. Очевидно, что сравнение 'Я' > 'А' закончится на 1-м шаге. Что касается строк "Ком" и "Код", то их сравнение будет осуществляться посимвольно следующим образом: 1. "К" равна "К". 2. "о" равна "о". 3. "м" является больше чем "д". А значит, сравнение строк заканчивается. Результат - первая строка больше, чем вторая.</p>
12
<p>Рассмотрим наши примеры. Очевидно, что сравнение 'Я' > 'А' закончится на 1-м шаге. Что касается строк "Ком" и "Код", то их сравнение будет осуществляться посимвольно следующим образом: 1. "К" равна "К". 2. "о" равна "о". 3. "м" является больше чем "д". А значит, сравнение строк заканчивается. Результат - первая строка больше, чем вторая.</p>
13
<p>Почему так получается? Потому что здесь используется на классический алфавит, а<strong>кодировка Unicode</strong>, в соответствии с которой каждый символ имеет свое значение на "машинном" языке. Таблицу символов русского языка можно посмотреть, например,<a>здесь</a>.</p>
13
<p>Почему так получается? Потому что здесь используется на классический алфавит, а<strong>кодировка Unicode</strong>, в соответствии с которой каждый символ имеет свое значение на "машинном" языке. Таблицу символов русского языка можно посмотреть, например,<a>здесь</a>.</p>
14
<p>Кроме того, следует учитывать, что в JavaScript регистр символов тоже имеет значение. Если вы перейдёте по ссылке выше, то увидите, что строчная "a" не равна заглавной "A". Как видно из таблицы, строчная "a" будет больше.</p>
14
<p>Кроме того, следует учитывать, что в JavaScript регистр символов тоже имеет значение. Если вы перейдёте по ссылке выше, то увидите, что строчная "a" не равна заглавной "A". Как видно из таблицы, строчная "a" будет больше.</p>
15
<p>Пожалуй, это основное из того, что нужно знать о сравнении строк. Собственно говоря, это простейшие вещи, которые должен знать каждый. Если же вас интересуют действительно продвинутые навыки программирования на JavaScript, добро пожаловать на наш курс!</p>
15
<p>Пожалуй, это основное из того, что нужно знать о сравнении строк. Собственно говоря, это простейшие вещи, которые должен знать каждый. Если же вас интересуют действительно продвинутые навыки программирования на JavaScript, добро пожаловать на наш курс!</p>
16
16