javascript 에서 형식 변환 규칙 을 실행 합 니 다.

2005 단어
우선 코드 를 살 펴 보 겠 습 니 다.
<!DOCTYPE html>
<html>
<head>
<title>contextMenu Event Example</title>
<script type="text/javascript">
window.onload = function(){
var undefined;
alert(undefined == null); 
// true
alert(2 == true);   
// true
2 == true;   
// false
0 == false;  
// true
0 == '';     
// true
NaN == NaN;  
// false
[] == false; 
// true
[] == ![];   
// true

}
</script>
</head>
<body>
</body>
</html>

형식 변환 을 실행 하 는 규칙 은 다음 과 같 습 니 다.
하나의 연산 수가 Boolean 값 이 라면, 같은 성 을 검사 하기 전에 숫자 값 으로 변환 합 니 다.false 를 0 으로, true 를 1 로 변환 합 니 다.
하나의 연산 수가 문자열 이 고, 다른 하 나 는 숫자 라면, 같은 성 을 검사 하기 전에 문자열 을 숫자 로 변환 해 보 세 요.
하나의 연산 수가 대상 이 고, 다른 하 나 는 문자열 이 라면, 상등 성 을 검사 하기 전에 대상 을 문자열 로 변환 해 보 세 요.
만약 하나의 연산 수가 대상 이 고, 다른 하 나 는 숫자 라면, 상등 성 을 검사 하기 전에 대상 을 숫자 로 바 꾸 려 고 시도 해 야 한다.
비교 할 때 이 연산 자 는 다음 과 같은 규칙 을 준수 합 니 다.
값 null 은 undefined 와 같 습 니 다.
동일 성 을 검사 할 때 null 과 undefined 를 다른 값 으로 변환 할 수 없습니다.
만약 어떤 연산 수가 NaN 이 라면, 등 호 는 false 로 돌아 가 고, 비등 호 는 true 로 돌아간다.
만약 두 연산 수가 모두 대상 이 라면, 비교 하 는 것 은 그들의 인용 값 이다.만약 두 연산 수가 같은 대상 을 가리킨다 면, 등 호 는 true 로 돌아 가 고, 그렇지 않 으 면 두 연산 수가 같 지 않다. 
NaN = = = NaN, 결과 가 false 인 경우 다음 과 같이 설명 한다.
NaN      ,        .   Not A Number,          .     ,    NaN     ,               .
javascript:alert(typeof(NaN));      ,          .    NaN             ,              .              ,                 .             ,    ,    1         .      1      ,              .    NaN         .
  javascript NaN         ,             ,     ,      NaN     .

         ,    :
    NaN       ,  NaN    NaN.

    randomise  random,random +1           , random    random  .       random        ,      . NaN           .

[] = = [] 결 과 는 false 로 다음 과 같이 이해 할 수 있 습 니 다.
두 연산 자 는 모두 대상 이 고, 비교 하 는 것 은 그들의 인용 값 이다.첫 번 째 [] 와 두 번 째 [] 는 같은 대상 을 명확 하 게 가리 키 지 않 았 기 때문에 결 과 는 false 였 다.동 리: []! =[], 결 과 는 트 루.

좋은 웹페이지 즐겨찾기