>웹 프론트엔드 >JS 튜토리얼 >왜 그럴까요? lt; 사실이 되겠지만 gt; gt; JavaScript에서 false를 반환합니까?

왜 그럴까요? lt; 사실이 되겠지만 gt; gt; JavaScript에서 false를 반환합니까?

WBOY
WBOY원래의
2024-08-21 06:05:02785검색

Why does lt; lt; eturn true but gt; gt; eturn false in JavaScript?

안녕하세요, JavaScript 팬 여러분! 코드가 이상해 머리를 긁적이게 되는 순간을 경험한 적이 있습니까? 오늘은 좋은 소식을 가지고 왔습니다.

다음 사항을 확인하세요.

console.log(1 < 2 < 3);  // true
console.log(3 > 2 > 1);  // false

잠깐, 뭐라고요? 두 번째는 거짓인가요? 하지만 3은 2보다 크고, 2는 1보다 큽니다. 그렇죠? 그럼 여기서 무슨 일이 벌어지고 있는 걸까요?

분석해 보겠습니다.

  1. JavaScript는 이러한 비교를 왼쪽에서 오른쪽으로 읽습니다.
  2. 1< 2 < 3:
    • 먼저 1 < 2. 맞습니다.
    • 그렇다면 그것은 사실입니다 < 3.
  3. 3인용 > 2 > 1:
    • 먼저 3> 2. 맞습니다.
    • 그러면 정말 그렇습니다 > 1.

여기서 중요한 점은 JavaScript가 true를 숫자와 비교할 때 true를 1로 바꾸는 것입니다.

실제로 일어나는 일은 다음과 같습니다.

  1. 참 < 3은 1< 3, 맞습니다.
  2. 사실 > 1은 1> 1. 거짓입니다.

이것이 바로 첫 번째에 대해서는 참이고 두 번째에 대해서는 거짓인 이유입니다.

미쳤지?

그럼 우리는 이로부터 무엇을 배울 수 있나요? 여러 비교를 할 때는 명확하게 하는 것이 좋습니다. 3 > 2 > 1이면 (3 > 2) && (2 > 1)이라고 쓸 수 있습니다. 조금 더 길지만 적어도 기대한 만큼은 작동합니다.

위 내용은 왜 그럴까요? lt; 사실이 되겠지만 gt; gt; JavaScript에서 false를 반환합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.