문서의 임의 삭제는 제재 대상으로, 문서를 삭제하려면 삭제 토론을 진행해야 합니다. 문서 보기문서 삭제토론 === (문서 편집) [[분류:프로그래밍 언어 문법]] [include(틀:프로그래밍 언어 문법)] [목차] == 개요 == [[JavaScript]]의 일치 연산자.[* javascript의 것만은 아니며, [[Elixir(프로그래밍 언어)|Elixir]]등의 언어도 같은 연산자를 지원한다. ~~근데 엘릭서의 ==는 문자열을 숫자로 바꾸는 짓까진 하지 않는다~~] == 상세 == 다른 [[프로그래밍 언어]]들에서는 비교 연산자가 [[==]]인데 비해, 자바스크립트는 {{{==}}}(동등 연산자)와 {{{===}}}(일치 연산자)로 나뉜다. 이는 자바스크립트의 특징 때문인데, 약타입 언어인 자바스크립트에서는 1과 "1"을 비교하면 "1"을 자동으로 1로 형변환해 비교하고, 결국 {{{1 == "1"}}}은 {{{true}}}가 나오게 된다. 이와 비슷하게 {{{null == undefined}}}도 {{{true}}}로 판단되는 등 여러 문제가 많아 타입까지 비교하는 {{{===}}}의 존재가 필요하게 되었다. {{{===}}}(일치 연산자)의 경우 타입까지 비교하게 되므로, 1과 "1"은 타입이 다르므로 {{{1 === "1"}}}은 {{{false}}}로 판단된다. 최근 들어서는 많은 스타일 가이드에서 불편한 버그가 발생하지 않는 {{{===}}}(일치 연산자)의 사용이 권장된다. 부정 연산자는 {{{!==}}}이다. == 명칭 == 두 연산자의 정확한 명칭을 알기 힘들어 다른 이름으로 쓰이는 경우가 많은데, [[MDN]]의 문서를 보면 영어로는 {{{==}}}는 '''__Equality__''' 연산자, {{{===}}}는 '''__Strict equality__''' 연산자라고 소개되어 있다. [[https://262.ecma-international.org/5.1/#sec-11.9.4|ECMA 표준]]에도 비슷한 이름으로 나와 있다. 국내에서는 여러 명칭으로 불리고 있지만, '''__동등 연산자__'''와 '''__일치 연산자__'''의 사용이 제일 많다. == 기타 == [[파일:4skcofasa1p01.png|width=550px]] {{{==}}} 동등 연산자의 황당함을 보여주는 밈도 존재한다. 주로 [[JavaScript]]를 까는 여타 밈과 같이 쓰이는 편.저장 버튼을 클릭하면 당신이 기여한 내용을 CC-BY-NC-SA 2.0 KR으로 배포하고,기여한 문서에 대한 하이퍼링크나 URL을 이용하여 저작자 표시를 하는 것으로 충분하다는 데 동의하는 것입니다.이 동의는 철회할 수 없습니다.캡챠저장미리보기