Истина или ложь? | JavaScript Camp
В этой главе будет много нового, но уж очень сложно быть не должно: ведь, в общем-то, всё вертится вокруг простой идеи — истина или ложь?
До сих пор мы всегда имели дело лишь с примитивными типами данных — с числами и строками. Быть может, вам уже встречался термин «примитивный» применительно к программированию? Если нет, я поясню: «примитивный» (ещё говорят «простой») означает, что этот тип данных не является объектом (к этому моменту мы ещё вернёмся) и не имеет встроенных методов работы (то есть функций⚙️).
Тип данных, который вам обязательно понадобятся, называется булевым boolean
, или логическим. Булевый тип всегда имеет значение либо true
✅ — истина, либо false
❎ — ложь. И только так, и никак иначе! Он либо врёт, либо говорит правду — пан или пропал, свет включен или выключен, либо есть, либо нет. Вы либо сделали домашнее задание, либо нет. Только два 2️⃣ значения true
✅ или false
Видео
Операторы равенства
Булевы значения приходятся как нельзя кстати, когда нам необходимо что-то сравнить в JavaScript. Когда такая необходимость появляется, мы сразу же вызываем операторы сравнения.
Сейчас мы последовательно изучим все восемь операторов сравнения, но штука в том, что в результате работы каждого из них мы всё равно
всегда останемся с булевым значением — либо true
✅ , либо false
❎ .
Равно
==
Оператор равно сначала приводит операнды к одному типу, и затем применяет строгое сравнение. Если оба операнда являются объектами, то JavaScript сравнивает внутренние ссылки, которые равны в том случае, если они ссылаются на один и тот же объект в памяти.
Синтаксис📖:
x == y
Примеры:
1 == 1 // истина
'1' == 1 // истина
1 == '1' // истина
3 == 5 // ложь
0 == false // истина
'foo' == 'bar' // ложь
Введите по очереди примеры в переменную 🔔 bool
нашего LIVE EDITOR
function learnJavaScript() { let bool = 1 == 1 return bool. toString() }
Loading…
Не равно
!=
Оператор не равно возвращает🔄 true
✅ в том случае, если операнды не равны. Он аналогичен оператору равенства, перед сравнением приводит операнды к одному типу. В случае если оба операнда являются объектами, JavaScript сравнивает внутренние ссылки, которые не равны в том случае, если относятся к разным объектам в памяти.
Синтаксис📖:
x != y
Примеры:
1 != 2 // истина
1 != '1' // ложь
'1' != 1 // ложь
1 != true // ложь
0 != false // ложь
'foo' != 'bar' // истина
Введите по очереди примеры в переменную 🔔
нашего LIVE EDITOR
function learnJavaScript() { let bool = 1 != 2 return bool.toString() }
Loading…
Строго равно
===
Оператор возвращает🔄 истину в том случае, если операнды строго равны. В отличие от оператора равно, данный оператор не приводит операнды к одному типу.
Синтаксис📖:
x === y
Примеры:
3 === 3 // истина
3 === '3' // ложь
'foo' === 'foo' // истина
Оператор чётко следит за тем, чтобы и значение, и тип были строго идентичными. В случае с 3 === '3'
значение, конечно, идентично, однако тип — нет: ведь первое число, а второе строка.
Введите по очереди примеры в переменную 🔔 bool
нашего LIVE EDITOR
function learnJavaScript() { let bool = 3 === 3 return bool.toString() }
Loading…
Строго не равно
!==
Оператор строго не равно возвращает🔄 истину в том случае, если операнды не равны, или их типы отличаются друг от друга.
Синтаксис📖:
x !== y
Примеры:
3 !== '3' // истина
4 !== 3 // истина
Введите по очереди примеры в переменную 🔔 bool
нашего LIVE EDITOR
function learnJavaScript() { let bool = 3 === 3 return bool.toString() }
Loading…
Почему не надо использовать ==
и !=
? А потому, что такой необходимости, в общем-то, никогда и нет. В любом возможном случае, когда вы можете их использовать, всегда можно использовать и строгие ===
и !==
. Если же вы желаете большей гибкости в ответе (скажем, чтобы с одинаковым успехом принималось как 1
, так и '1'
или true
✅ ), то можно просто включить нужные варианты ответа в сам код📟 (не меняя при этом ===
).
Операторы сравнения
Больше
>
Оператор больше возвращает🔄 истину в том случае, если значение левого операнда больше, чем правого.
Синтаксис📖:
Примеры:
4 > 3 // истина
1 > 5 // ложь
Введите по очереди примеры в переменную 🔔 bool
LIVE EDITOR
function learnJavaScript() { let bool = 4 > 3 return bool.toString() }
Loading…
Меньше
<
Оператор меньше, возвращает🔄 истину в том случае, если значение операнда слева меньше, чем значение операнда справа.
Синтаксис📖:
Примеры:
3 < 4 // истина
5 < 2 // ложь
Введите по очереди примеры в переменную 🔔 bool
нашего LIVE EDITOR
function learnJavaScript() { let bool = 3 < 4 return bool.toString() }
Loading…
Больше или равно
>=
Оператор больше или равно, возвращает🔄 истину в том случае, если значение операнда слева больше или равно значению операнда справа.
Синтаксис📖:
x >= y
Примеры:
4 >= 3 // истина
3 >= 3 // истина
Введите по очереди примеры в переменную 🔔 bool
👇 :
function learnJavaScript() { let bool = 4 >= 3 return bool.toString() }
Loading…
Меньше или равно
<=
Оператор меньше или равно, возвращает🔄 истину в том случае, если значение операнда слева меньше, или равно значению операнда справа.
Синтаксис📖:
x <= y
Примеры:
3 <= 4 // истина
3 <= 3 // истина
Введите по очереди примеры в переменную 🔔 bool
👇 :
function learnJavaScript() { let bool = 3 < 4 return bool.
toString() }Loading…
Условные конструкции
Вы, должно быть, думаете: «Ну, все эти булевы-логические штуки — это было очень просто… Наверное, они довольно бесполезны, и используют их нечасто». Как бы не так! Логические значения используются в программировании более чем постоянно и всего чаще — в форме условных конструкций (или выражений).
А что такое «условная конструкция»?
Хороший вопрос! Условная конструкция — это такое предложение, которое используется для запуска определённых блоков кода📟 согласно заданному условию. Условие (например, при сравнении x === y
) всегда возвращает🔄 логическое значение — либо true
✅ , либо false
❎ . Соответственно, если значение true
✅ , то код следует запустить, в противном же случае блок кода📟 следует пропустить. Рассмотрим несколько примеров.
Условные выражения с
if
Конструкция if
выполняет инструкцию1
, если условие true
✅, если условие false
❎, то выполняется инструкция2
.
Синтаксис📖:
if (условие) {
инструкции1
} else {
инструкции2
}
условие
—
Выражение, которое является либо истинным, либо ложным.
инструкция1
—
Инструкция, выполняемая в случае, если значение условиe
истинно true
✅ . Может быть любой инструкцией в том числе и вложенным if
. Когда никакого действия не требуется, может использоваться пустая инструкция.
инструкция2
—
Инструкция, выполняемая в случае, если значение условиe
ложно false
❎ . Может быть любой инструкцией, в том числе и вложенным if
. Инструкции тоже можно группировать в блок. Измените год в переменной 🔔 whatIsTheYearNow
и обратите внимание на вывод.function learnJavaScript() { let whatIsTheYearNow = 2021 if (whatIsTheYearNow === 2021) { whatIsTheYearNow = true } else { whatIsTheYearNow = false } return whatIsTheYearNow.toString() }
Loading…
if
не только с булевыми значениямиУсловные выражения могут работать не только с булевыми значениями, то есть с такими, которые не точно true
✅ или false
❎ Так что мы, в общем-то, спокойно можем использовать их в скобках, как и булевы значения.
- Все целые числа, кроме нуля —
true
✅ - Cтрока с хотя бы одним символом
true
✅ - Пустая строка — это
false
❎
Давайте попробуем, введите значения в переменную 🔔 bool
👇 :
function learnJavaScript() { let bool = 1 if (bool) { bool = true } else { bool = false } return bool. toString() }
Loading…
Операторы сравнения в выражениях с
if
До сих пор мы с вами имели дело со сравнениями или с условными выражениями с if
, но пока мы не использовали их вместе, а ведь они просто созданы🏗️ друг для друга!
function learnJavaScript() { let year = 2021 let output if (year < 2020) { output = ‘меньше 2020’ } else { output = ‘больше 2020’ } return output }
Loading…
Несколько условий
else if
Иногда, нужно проверить несколько вариантов условия. Для этого используется блок else if
. Измените год и смотрите вывод.
function learnJavaScript() { let year = 2021 let output if (year < 2020) { output = ‘меньше 2020’ } else if (year > 2020) { output = ‘больше 2020’ } else { output = ‘равно 2020’ } return output }
Loading…
Логические операторы
В JavaScript есть три логических оператора: ||
(ИЛИ), &&
(И) и !
(НЕ).
Несмотря на своё название, данные операторы могут применяться к значениям любых типов. Полученные результаты также могут иметь различный тип.
Давайте рассмотрим их подробнее.
||
(ИЛИ)Оператор «ИЛИ» выглядит как двойной символ вертикальной черты:
result = a || b
Традиционно в программировании ИЛИ предназначено только для манипулирования булевыми значениями: в случае, если какой-либо из аргументов true
, он вернёт true
, в противоположной ситуации возвращается false
.
В JavaScript, как мы увидим далее, этот оператор работает несколько иным образом. Но давайте сперва посмотрим, что происходит с булевыми значениями.
Существует всего четыре возможные логические комбинации:
true || true // true
false || true // true
true || false // true
false || false // false
Как мы можем наблюдать, результат операций всегда равен true
, за исключением случая, когда оба аргумента false
.
Обычно оператор ||
используется в if
для проверки истинности любого из заданных условий.
function learnJavaScript() { let hour = 9 let result = » if (hour < 10 || hour > 18) { result = ‘Магазин закрыт’ } return result }
Loading. ..
&&
(И)Оператор И пишется как два амперсанда &&
:
result = a && b
В традиционном программировании И возвращает true
, если оба аргумента истинны, а иначе – false
:
true && true // true
false && true // false
true && false // false
false && false // false
Пример с if
:
function learnJavaScript() { let hour = 12 let minute = 30 let result = » if (hour === 12 && minute === 30) { result = ‘The time is 12:30’ } return result }
Loading…
!
(НЕ)Оператор НЕ представлен восклицательным знаком !
.
Синтаксис довольно прост:
result = !value
Оператор принимает один аргумент и выполняет следующие действия:
Сначала приводит аргумент к логическому типу true/false
.
Затем возвращает противоположное значение.
Например:
!true // false
!0 // true
Условный (тернарный) оператор
?
Единственный оператор в JavaScript, принимающий три операнда: условие
, за которым следует знак вопроса ?
, затем выражение
, которое выполняется, если условие истинно, сопровождается двоеточием :
, и, наконец, выражение
, которое выполняется, если условие ложно. Он часто используется в качестве укороченного варианта условного оператора if
.
Синтаксис📖:
условие ? выражение1 : выражение2
Параметры:
условие
— Выражение, принимающее значение true
✅ или false
❎ .
выражение1
, выражение2
— Выражения, значения которых могут принадлежать любому типу.
Пример 👇 :
function learnJavaScript() { let age = 20 let output = age > 18 ? ‘Да’ : ‘Нет’ return output }
Loading…
React Native
Например нам нужно показать индикатор загрузки до тех пор пока дынные с сервера подгружаются, а после после показать эти данные. Пока сэмулируй это изменение вручную и заменим false
на true
.
Проблемы?
Пишите в Discord или телеграмм чат, а также подписывайтесь на наши новости
Вопросы:
Какой синтаксис используется в операторе равно?
x == y
x = y
x -- y
В каком случае оператор не равно возвращает true
?
- Если операнды не равны
- Если операнды равны
- Если оба операнда являются объектами
Чем оператор равно отличается от строго равно?
- Строго равно не приводит операнды к одному типу
- Строго равно приводит операнды к одному типу
- Строго равно следит за тем, чтобы значение было идентичным, а тип нет
Какой синтаксис у оператора строго не равно?
!=
!==
==!
В каком случае оператор больше возвращает ложь?
- Если значение левого операнда больше, чем правого
- Если значение правого операнда больше, чем левого
- Если значения операнд одинаковые
Какой синтаксис у оператора больше или равно?
>=
> =>
> <=
В каком примере оператор меньше или равно вернёт истину?
4 <= 5
5 <= 4
3 <= 2
Что такое условие?
- Инструкция
- Выражение
- Значение
Какой блок используется, чтобы проверить несколько вариантов условия?
else if
if
for
Какой оператор принимает 3 операнда?
- Условный (тернарный) оператор
- Больше или равно
- Меньше или равно
Какой оператор сравнения предпочтительнее для проверки — значения не равны?
===
!=
!==
Какие два оператора сравнения рекомендуют не использовать в коде?
> и <
== и !=
=> и <=
Какой оператор сравнения проверяет, меньше ли значение справа или равно значению слева?
<=
=>
>=
Какие общие инструкции в кодировании используются для выполнения определенных блоков кода на основе заданного условия?
- Логическое выражение
- Условное выражение
- Разные выражения
Какого рода оператор запускается только тогда, когда условие для блока if
принимает значение false
?
if
else if
else
Операторы сравнения всегда дают значение true
или false
.
true
false
Иногда внутри оператора else
можно использовать операторы сравнения.
true
false
Оператор if / else
может использоваться только вне функции.
true
false
Подобно операторам сравнения, операторы ___ (&&
, ||
и !
) Отлично работают в условных операторах.
- условия
- сравнения
- логики
Чему равно 53 >= 53 && !(51 <= 52)
?
true
false
Если условие в скобках блока if
возвращает ложь, какой синтаксис можно использовать для проверки другого условия перед преобразованием в блок else
?
else if
if
else
Как называется единственный логический оператор, который всегда возвращает логическое значение? Какой символ у этого логического оператора?
!
||
&&
Как называется логический оператор, который вернет истинное значение, если оно имеет истинное значение с обеих сторон? Какой символ у этого логического оператора?
||
&&
- оба
Чему равно true || false
?
true
false
Для того чтобы понять, на сколько вы усвоили этот урок, пройдите тест в мобильном приложении нашей школы по этой теме или в нашем телеграм боте.
Ссылки:
- MDN web docs — Операторы сравнения
- Код для подростков: прекрасное руководство по программированию для начинающих, том 1: Javascript — Jeremy Moritz
Contributors ✨
Thanks goes to these wonderful people (emoji key):
Dmitriy Vasilev 📖💵 | Resoner2005 🐛 🎨 🖋 |
|
Смотреть материал на видео На этом занятии мы будем рассматривать магические методы для реализации операторов сравнения:
Рассматривать работу этих методов мы будем на примере нашего класса Clock, который использовали на предыдущем занятии: class Clock: __DAY = 86400 # число секунд в одном дне def __init__(self, seconds: int): if not isinstance(seconds, int): raise TypeError("Секунды должны быть целым числом") self. seconds = seconds % self.__DAY def get_time(self): s = self.seconds % 60 # секунды m = (self.seconds // 60) % 60 # минуты h = (self.seconds // 3600) % 24 # часы return f"{self.__get_formatted(h)}:{self.__get_formatted(m)}:{self.__get_formatted(s)}" @classmethod def __get_formatted(cls, x): return str(x).rjust(2, "0") Изначально для класса реализован только один метод сравнения на равенство, например: c1 = Clock(1000) c2 = Clock(1000) print(c1 == c2) Но здесь объекты сравниваются по их id (адресу в памяти), а мы бы хотели, чтобы сравнивались секунды в каждом из объектов c1 и c2. Для этого переопределим магический метод __eq__(), следующим образом: def __eq__(self, other): if not isinstance(other, (int, Clock)): raise TypeError("Операнд справа должен иметь тип int или Clock") sc = other if isinstance(other, int) else other. seconds return self.seconds == sc Теперь, после запуска программы видим значение True, т.к. объекты содержат одинаковое время. Кроме того, мы можем совершенно спокойно выполнять проверку и на неравенство: print(c1 != c2) Смотрите, если интерпретатор языка Python не находит определение метода ==, то он пытается выполнить противоположное сравнение с последующей инверсией результата. То есть, в данном случае находится оператор == и выполняется инверсия: not (a == b) Давайте в этом убедимся, поставим точку останова в метод __eq__ и запустим программу. Как видите, он срабатывает и результат в последствии меняется на противоположный. Отлично, на равенство и неравенство мы теперь можем сравнивать объекты класса Clock, а также с целыми числами. Однако, сравнение на больше или меньше пока не работает. Строчка программы: print(c1 < c2) приведет к ошибке. Добавим эту операцию сравнения: def __lt__(self, other): if not isinstance(other, (int, Clock)): raise TypeError("Операнд справа должен иметь тип int или Clock") sc = other if isinstance(other, int) else other.seconds return self.seconds < sc Как видите, у нас здесь получается дублирование кода. Поэтому, я вынесу общее для методов сравнения в отдельный метода класса: @classmethod def __verify_data(cls, other): if not isinstance(other, (int, Clock)): raise TypeError("Операнд справа должен иметь тип int или Clock") return other if isinstance(other, int) else other.seconds А сами методы примут вид: def __eq__(self, other): sc = self.__verify_data(other) return self.seconds == sc def __lt__(self, other): sc = self.__verify_data(other) return self.seconds < sc Итак, мы определили сравнение на равенство и меньше. Теперь, можно сравнивать объекты класса Clock на эти операции и дополнительно на неравенство и больше. Сейчас команда: c1 = Clock(1000) c2 = Clock(2000) print(c1 < c2) Выдаст True, так как первое время меньше второго. И также мы можем совершенно спокойно делать проверку на больше: print(c1 > c2) Здесь сработает тот же метод меньше, но для объекта c2: c2 < c1 То есть, в отличие от оператора ==, где применяется инверсия, здесь меняется порядок операндов. Разумеется, если в классе определен метод больше: def __gt__(self, other): sc = self.__verify_data(other) return self.seconds > sc то он будет найден и выполнен. Подмена происходит только в случае отсутствия соответствующего магического метода. И то же самое для методов сравнения на меньше или равно и больше или равно: def __le__(self, other): sc = self. __verify_data(other) return self.seconds <= sc Если мы его вызовем непосредственно для объектов класса: print(c1 <= c2) то он сработает и результат отобразится в консоли. Но, если пропишем обратное сравнение: print(c1 >= c2) то просто изменится порядок операндов и будет взято все то же сравнение меньше или равно. То есть, для определения операций сравнения достаточно в классе определить только три метода: ==, <, <=, если остальные являются их симметричной противоположностью. В этом случае язык Python сам подберет нужный метод и выполнит его при сравнении объектов. Я, думаю, теперь вы хорошо себе представляете, как можно реализовывать операции сравнения для объектов класса. Видео по темеКонцепция ООП простыми словами #1. Классы и объекты. Атрибуты классов и объектов #2. Методы классов. Параметр self #3. Инициализатор __init__ и финализатор __del__ #4. Магический метод __new__. Пример паттерна Singleton #5. Методы класса (classmethod) и статические методы (staticmethod) #6. Режимы доступа public, private, protected. Сеттеры и геттеры #7. Магические методы __setattr__, __getattribute__, __getattr__ и __delattr__ #8. Паттерн Моносостояние #9. Свойства property. Декоратор @property #10. Пример использования объектов property #11. Дескрипторы (data descriptor и non-data descriptor) #12. Магический метод __call__. Функторы и классы-декораторы #13. Магические методы __str__, __repr__, __len__, __abs__ #14 Магические методы __add__, __sub__, __mul__, __truediv__ #15. Методы сравнений __eq__, __ne__, __lt__, __gt__ и другие #16. Магические методы __eq__ и __hash__ #17. Магический метод __bool__ определения правдивости объектов #18. Магические методы __getitem__, __setitem__ и __delitem__ #19. Магические методы __iter__ и __next__ #20. Наследование в объектно-ориентированном программировании #21. Функция issubclass(). Наследование от встроенных типов и от object #22. Наследование. Функция super() и делегирование #23. Наследование. Атрибуты private и protected #24. Полиморфизм и абстрактные методы #25. Множественное наследование #26. Коллекция __slots__ #27. Как работает __slots__ с property и при наследовании #28. Введение в обработку исключений. Блоки try / except #29. Обработка исключений. Блоки finally и else #30. Распространение исключений (propagation exceptions) #31. Инструкция raise и пользовательские исключения #32. Менеджеры контекстов. Оператор with #33. Вложенные классы #34. Метаклассы. Объект type #35. Пользовательские метаклассы. Параметр metaclass #36. Метаклассы в API ORM Django
|
Знакомство с операторами сравнения в JavaScript | by Codecupdev
JavaScript предоставляет нам набор операторов, называемых операторами сравнения . Операторы сравнения позволяют нам сравнивать значения и возвращать логическое значение (истина или ложь).
Первый набор этих операторов, который мы рассмотрим:
- Больше чем: Проверяет, больше ли значение, чем что-либо.
- Меньше чем: Проверяет, меньше ли значение, чем что-либо.
- Больше или равно: Проверяет, является ли значение большим или равным чему-либо.
- Меньше или равно: Проверяет, меньше ли значение или равно чему-либо.
Если бы мы создавали программу, основанную на запасах в супермаркете, мы могли бы столкнуться с ситуацией, когда мы хотим, чтобы пользователь мог разместить заказ только в том случае, если у нас есть бананы на складе. Для этого мы хотели бы проверить, что количество доступных бананов больше 0, это будет примером использования оператора «больше чем».
Позже мы можем захотеть ограничить количество бананов, которое клиент может заказать за один раз, до 5, чтобы обеспечить справедливую систему заказов. В этом случае мы хотели бы проверить, что количество заказов на бананы меньше или равно 5, и мы использовали бы оператор меньше или равно.
Мы начнем с простого примера использования оператора «больше». Мы проверим, меньше ли единица 2, и получим истину.
1 < 2
// ---> Возвращает true
Теперь идем дальше и проверяем, больше ли единица двух, и получаем false.
1 > 2
// ---> Возвращает false
Теперь давайте сделаем пример с оператором меньше или равно. Мы проверим, если 5 меньше или равно 5, мы получим true.
5 <= 5
// ---> Возвращает истину
Следующий набор операторов сравнения позволяет нам проверять, равно ли значение другому значению, и возвращать логическое значение в зависимости от того, так это или нет. Эти операторы состоят из следующих операторов:
- Оператор равенства (иногда называемый свободным равенством)
- Оператор неравенства (иногда называемый свободным неравенством)
- Строгое равенство
- Строгое неравенство
В JavaScript у нас есть так называемое свободное равенство и также строгое равенство. Когда мы используем свободный оператор равенства, Javascript выполняет то, что называется приведение типа .
Приведение типа — это автоматическое преобразование одного типа данных в другой тип данных. Итак, если бы мы хотели сравнить целое число ноль со строкой, содержащей ноль, сравнение с использованием нечеткого равенства вернуло бы true. Это связано с тем, что нулевая строка будет приведена к целочисленному типу, и тогда выполненное сравнение будет представлять собой число 0 по сравнению с числом 0. С другой стороны, если бы мы выполнили то же сравнение, используя оператор строгого равенства, возвращаемое значение было бы ложным. потому что оператор строгого равенства не выполняет приведения типов.
Итак, давайте начнем с оператора равенства. Мы будем сравнивать целое число пять со строкой 5. Как видите, мы получаем true, потому что строка пять приводится к целочисленному типу перед выполнением сравнения.
5 == '5'
// ---> Возвращает true
Теперь попробуем еще раз, но сравним целое число 5 со строкой 6. Они не равны, поэтому получаем false.
5 == '6'
// ---> Возвращает false
Если мы сделаем это снова и воспользуемся оператором неравенства, мы получим true, потому что оператор неравенства проверяет, не равны ли значения друг другу.
6 != '6'
// ---> Возвращает true
Наконец, мы рассмотрим оператор строгого равенства. Мы сравним целое число десять с целым числом десять. Эти значения одинаковы, поэтому мы получаем true.
10 === 10
// ---> Возвращает true
Попробуем немного изменить это и сравнить целое число десять со строкой десять. Теперь мы получаем false, и это потому, что мы используем оператор строгого равенства, и поэтому на этот раз строка не будет преобразована.
10 === '10'
// ---> Возвращает ложь
Однако, если мы проверим, что эти значения не равны, используя оператор строгого неравенства, мы получим истину, потому что они относятся к разным типам данных.
10 !== '10'
// ---> Возвращает true
Пожалуйста, не стесняйтесь оставлять комментарии, вопросы или отзывы!
Вы можете просмотреть видео этой статьи здесь:
У меня также есть курс Udemy, который охватывает эту тему и многое другое.
Увидимся в следующий раз!
Больше контента на plainenglish. io . Подпишитесь на нашу бесплатную еженедельную рассылку . Получите эксклюзивный доступ к возможностям письма и советам в нашем сообществе Discord .
Оператор JavaScript: Меньше или равно (`a
Могу ли я использовать
Поиск?
Оператор JavaScript: меньше или равно (`a
<= b`)Глобальное использование
97,86% + 0% знак равно 97,86%
IE
- 6 — 10: Supported
- 11: Supported
Edge
- 12 — 107: Supported
- 108: Supported
Firefox
- 21% — Supported»> 2 — 106: Supported
- 107: Supported
- 108–109: поддерживается
Chrome
- 4–107: поддерживается
- 108: Supported
- 109 — 111: Supported
Safari
- 3.1 — 16.0: Supported
- 16.1: Supported
- 16.2 — TP: Supported
Opera
- 10 — 91: Supported
- 92: Supported
Safari on iOS
- 3.2 — 16.0: Supported
- 16.