Могу ли я использовать тройные равенства для сравнения строк JavaScript?

Это очень простой вопрос, я знаю, но я не мог понять, что происходит с Google и Stack Overflow.

Я посмотрел здесь и здесь, чтобы узнать, как сравнивать строки в JavaScript. Ни одно из упомянутых тройных равных (===) в своих ответах и ​​сказал, что лучше использовать собственную функцию (str1 < str2 ? -1 : str1 > str2).

Однако, проходя объяснения о === в переполнении стека ( здесь и здесь) ответы содержат сравнения строк. Из того, что я видел в этих ответах, === работает для сравнения строк, так почему же он не был включен в ответы сравнения строк?

Я просто пытаюсь расширить свои знания в JavaScript.

Спасибо за понимание!

2 ответа

var str1 = "1";
var str2 = 1;
if (str1 == str2) {
      //Below code executes as it's true.
      console.log("Yes, value of both are equal.");
}

if (str1 === str2) {
     //Below code never executes as it's false.
     console.log("No, both are not equal as type differs.");
}

== сравнивает значение, но === сравнивает значение, а также тип.=== может использоваться для сравнения строк, но если вы уверены, что просто сравниваете строку, == должно быть достаточно. === это просто лучший выбор.

Вы можете использовать оба метода для сравнения строк, просто вы используете === когда вы хотите сравнить значение и тип. что еще ваш запрос?

Другие вопросы по тегам