널 == 정의되지 않음 //참 널 === 정의되지 않음 // 거짓
- 연산자: 목적: 데이터 유형에 관계없이 두 값이 같은지 비교하는 데 사용됩니다. 규칙: 두 피연산자의 유형이 같으면 일반 동일성 비교, 즉 값이 같은지 아닌지를 비교합니다. 피연산자의 유형이 다른 경우 유형 변환을 수행한 다음 값을 비교하여 동일한지 확인합니다.
- === 연산자: 목적: 두 값이 엄격하게 동일한지 비교하는 데 사용되며, 값 비교뿐만 아니라 데이터 유형도 비교합니다. 규칙: 두 피연산자의 타입이 다른 경우 타입 변환을 수행하지 않고 바로 false를 반환합니다. 타입이 같은 경우에만 두 값을 비교하여 동일한지 확인합니다.
2함수의 유형을 확인하는 방법
1.typeof
2. 인스턴스 오브
3.Object.prototype.toString.call()
4. 생성자
0.2 + 0.1 ! = 0.3
이유:
1. 부동 소수점 산술의 정밀도 때문입니다. 컴퓨터 작동 중에 데이터를 2진수로 변환한 다음 계산해야 합니다.
2.js의 숫자 유형이 IEEE754 표준을 따르기 위해 IEEE754 표준 64비트 부동 소수점 숫자 합에서 10진수로 변환할 때 잘린 이진수의 자체 소수점 숫자가 0.300000000000000000004 이 되기 때문에 계산에서 오류가 발생합니다!
、통화、적용、차이 바인딩
적용과 호출은 함수의 this를 가리키는 위치를 변경합니다. 두 함수의 첫 번째 매개 변수는 변경할 객체를 나타내는 동일하며, 두 번째 매개 변수인 적용은 배열이고 호출은 arg1,arg2....입니다. 두 번째 인자 apply는 배열이고 호출은 arg1,arg2....입니다. 바인딩을 통해 this의 범위를 변경하면 즉시 실행되지 않는 새 함수가 반환됩니다.




