Навіщо використовувати потрійне рівність в javascript, alexdev

Навіщо використовувати потрійне рівність в javascript, alexdev

«Визначення, еквівалентні чи 2 змінні, є одним з найбільш важливих операцій в програмуванні» - Nicholas Zakas.

Іншими словами, в вашому скрипті ви можете написати так:

Або, якщо ви хочете писати хороші скрипти, робіть так:

Різниця між цими двома прикладами в тому, що в другому прикладі використовується потрійне порівняння, яке по-іншому називають «суворе рівність» або «тотожна рівність».

В чому різниця?

Якщо порівняння за допомогою подвійного одно, то результат буде true. якщо дві змінні рівні. Але є одна важлива проблема: якщо порівняння робиться між двома змінними різних «типів», відбудеться приведення типів.

Це може призвести до несподіваних результатів. Наведемо кілька прикладів:

Хоча це спочатку і може виглядати правильно, це може привести до деяких проблем. Для прикладу:

Оператор потрійного порівняння ніколи не робить приведення типів. Тому, коли ви використовуєте потрійне порівняння, ви порівнюєте фактичні значення.

Це означає, що використання потрійного рівність у всіх випадках вище повернуло б правильний результат:

Що щодо нерівності?

При виконанні оператора не-одно до вираження, застосовуються ті ж правила. Тільки на цей раз, потрібно використовувати подвійні одно проти одного.

Ось кілька прикладів з використанням оператора! =.

Зауважте, що всюди повернулася звернене значення true. тому відбулося приведення типів.

Якщо ми змінимо подвійне рівність на потрійне, ми отримаємо правильні результати:

висновок

Як уже згадувалося, ви, ймовірно, вже використовували потрійне одно, але повторити заново завжди корисно. Під час вивчення цієї статті, я сам дізнався про цю концепцію багато нового.

Ось, що говорить Zakas про потрійне рівність: «. Це допомагає підтримувати цілісність даних типу в усьому коді ».

Дякую за увагу!

Підписуємося на розсилку!