JS에서 =, ==, === 의 차이는 무엇인가요? - Lee-hyuna/33-js-concepts-kr GitHub Wiki

=(동등연산자), == 및 ===(관계연산자) 자바스크립트에서 이 세 연산자의 차이점을 관련예제와 함께 설명해주세요.
그리고 ===의 유형변화는 무엇을 의미하는건가요?

3==='3'//false
3==="3"//false
"3"==3//true
3===3//true

왜 이러는거죠?

3==3//true
"3"==3//true
3=='3'//true
1==true//true

=을 사용하면 값을 지정할 수 있습니다.

x = 1 //x now equals 1
x = 2 //x now equals 2

==을 사용하면 다른 무언가가 있는지 확인합니다. 이것은 엄격하지 않습니다.

x == 1 //is x equal to 1? (False)
x == 2 //is x equal to 2? (True)
true == 1 //does the boolean value of true equal 1? (True)

===을 사용하면 다른 무언가가 있는지 확인하며, 이것은 엄격합니다.

x === 1 //is x equal to 1? (False)
x === 2 //is x equal to 2? (True)
true === 1 //does the boolean value of true equal 1? (False)

명확하지 않은 경우 엄격한 것은 두 값의 평등을 검사 할 뿐만 아니라 두 값의 유형도 비교합니다.
==을 사용하면 표현식의 한 쪽이 다른 쪽과 같은 유형으로 변환됩니다.
예) 부울 및 정수, true의 부울 값은 1이므로 1은 1입니까?
네, 사실입니다. 그러나 strict를 사용할 때 비교를 수행하기 전에 try 및 convert를 수행하지 않고 true가 1인지를 확인합니다.
이는 두 개의 다른 데이터 유형이 아니므로 false를 반환합니다.