Навіщо використовувати потрійне рівність в javascript, alexdev
«Визначення, еквівалентні чи 2 змінні, є одним з найбільш важливих операцій в програмуванні» - Nicholas Zakas.
Іншими словами, в вашому скрипті ви можете написати так:
Або, якщо ви хочете писати хороші скрипти, робіть так:
Різниця між цими двома прикладами в тому, що в другому прикладі використовується потрійне порівняння, яке по-іншому називають «суворе рівність» або «тотожна рівність».
В чому різниця?
Якщо порівняння за допомогою подвійного одно, то результат буде true. якщо дві змінні рівні. Але є одна важлива проблема: якщо порівняння робиться між двома змінними різних «типів», відбудеться приведення типів.
Це може призвести до несподіваних результатів. Наведемо кілька прикладів:
Хоча це спочатку і може виглядати правильно, це може привести до деяких проблем. Для прикладу:
Оператор потрійного порівняння ніколи не робить приведення типів. Тому, коли ви використовуєте потрійне порівняння, ви порівнюєте фактичні значення.
Це означає, що використання потрійного рівність у всіх випадках вище повернуло б правильний результат:
Що щодо нерівності?
При виконанні оператора не-одно до вираження, застосовуються ті ж правила. Тільки на цей раз, потрібно використовувати подвійні одно проти одного.
Ось кілька прикладів з використанням оператора! =.
Зауважте, що всюди повернулася звернене значення true. тому відбулося приведення типів.
Якщо ми змінимо подвійне рівність на потрійне, ми отримаємо правильні результати:
висновок
Як уже згадувалося, ви, ймовірно, вже використовували потрійне одно, але повторити заново завжди корисно. Під час вивчення цієї статті, я сам дізнався про цю концепцію багато нового.
Ось, що говорить Zakas про потрійне рівність: «. Це допомагає підтримувати цілісність даних типу в усьому коді ».
Дякую за увагу!
Підписуємося на розсилку!