기본 유형:
number
string
boolean
null
undefine
객체 유형:
Object
function
Array
Date
...
+/-
연산+/-
运算"37" + 7 = "377"
"37" - 7 = 30
==
运算以下为true:
"1.23" == 1.23
0 == false
null == undefined
===
严格等于类型不同,返回false
类型相同,以下为true:
null === null
undefine === null
NaN != NaN
new Object != new Obejct
==
等于类型相同,同===
类型不同,尝试类型转换比较
null == undefined
number == string 转number
boolean == ? 转number
Object == number | string 尝试对象转换为基本类型
其他:false
为了便于操作基本类型值,Js提供了基本类型的自动包装功能,每单读取一个基本类型值的时候,后台就会创建一个对应的基本包装类型的对象,并在调用后自动销毁。
由于基本包装类型和基本类型的含义并不一样,会导致typeof等操作产生不同的结果,不推荐显示实例化基本数据类型
var a = "string"; alert(a.length); //6 a.t = 3; alert(a.t); //undefined
以下为true:
typeof 100 === “number” typeof true === “boolean” typeof function () {} === “function” typeof(undefined) ) === “undefined” typeof(new Object() ) === “object” typeof( [1, 2] ) === “object” typeof(NaN ) === “number” //NaN也为number typeof(null) === “object”
obj instanceof Object
==
작업
0 == false
===
엄격히 🎜🎜🎜🎜유형과 동일, false 반환🎜🎜🎜🎜동일한 유형, 다음은 true입니다. 🎜🎜 🎜🎜null === null🎜🎜🎜🎜undefine === null🎜🎜🎜🎜NaN != NaN🎜🎜🎜🎜new Object != new Obejct🎜🎜🎜🎜==
은(는) 🎜🎜 🎜🎜동일한 유형, 동일 ===
🎜🎜🎜🎜다른 유형, 비교하려면 유형 변환을 시도하세요🎜🎜🎜🎜null == 정의되지 않음🎜🎜🎜🎜number == 문자열 number🎜🎜🎜🎜boolean == ? Convert number🎜🎜🎜🎜Object == number | string 객체를 기본 유형으로 변환해 보세요🎜🎜🎜🎜Others: false🎜🎜🎜🎜Packaging type🎜🎜 Js는 자동 기본 유형 패키징 기능을 제공하며, 기본 유형 값을 읽을 때마다 해당 기본 패키징 유형의 객체가 백그라운드에 생성되고 호출 후 자동으로 소멸됩니다. 🎜🎜기본 패키징 유형과 기본 유형의 의미가 다르기 때문에 typeof와 같은 작업은 다른 결과를 생성합니다. 인스턴스화된 기본 데이터 유형을 표시하는 것은 권장되지 않습니다.🎜[1, 2] instanceof Array === true new Object() instanceof Array === false🎜유형 감지🎜🎜typeof🎜🎜다음은 사실입니다.🎜
Object.prototype.toString.apply([]); === “[object Array]”; Object.prototype.toString.apply(function(){}); === “[object Function]”; Object.prototype.toString.apply(null); === “[object Null]” Object.prototype.toString.apply(undefined); === “[object Undefined]” // IE6/7/8 Object.prototype.toString.apply(null) 返回”[object Object]”🎜instanceof🎜🎜
objinstanceofObject
는 프로토타입 체인을 사용하여 판단하는데, 이는 객체 간 판단에 적합합니다. 왼쪽에는 개체가 있고 오른쪽에는 함수 개체 또는 함수 생성자가 필요합니다. 🎜🎜다음은 true입니다. 🎜rrreee🎜Object.prototype.toString.apply()🎜rrreee🎜Summary🎜🎜🎜🎜typeof🎜기본 유형 및 기능 감지에 적합하며 null이 발생하면 실패합니다. 🎜🎜🎜🎜[[클래스]]🎜 내장 객체 및 기본 유형에 적합한 {}.toString을 통해 가져옵니다. null 및 정의되지 않은 경우(IE678 등은 [객체 객체] 반환) 실패합니다. 🎜🎜🎜🎜instanceof🎜는 사용자 정의 개체에 적합하며 기본 개체를 검색하는 데에도 사용할 수 있습니다. 서로 다른 iframe과 창을 검색하면 실패합니다. 🎜🎜🎜위 내용은 JavaScript 유형 간 비교 공유의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!