js判斷變量是對象 JavaScript判斷變量是否為對象的方法
一、使用typeof運算符判斷變量類型typeof運算符可以返回一個變量的數據類型,包括"undefined"、"boolean"、"number"、"string"、"object"和"functi
一、使用typeof運算符判斷變量類型
typeof運算符可以返回一個變量的數據類型,包括"undefined"、"boolean"、"number"、"string"、"object"和"function"。當變量是對象時,返回值為"object"。
例如:
```
var obj {};
console.log(typeof obj); // 輸出:object
var arr [];
console.log(typeof arr); // 輸出:object
```
需要注意的是,typeof運算符對于null的返回值是"object",因為null被認為是一個空的對象引用。
二、使用instanceof運算符判斷對象的原型鏈
instanceof運算符可以判斷一個對象是否屬于某個構造函數創建的實例。如果是,則返回true;否則,返回false。
例如:
```
function Person(name) {
name;
}
var person new Person("張三");
console.log(person instanceof Object); // 輸出:true
console.log(person instanceof Person); // 輸出:true
var str "Hello";
console.log(str instanceof Object); // 輸出:false
```
三、使用方法判斷對象類型
方法返回一個表示對象的字符串,字符串的格式為"[object 類型]"??梢越柚@個方法來判斷一個變量是否為對象。
例如:
```
var obj {};
console.log((obj)); // 輸出:[object Object]
var arr [];
console.log((arr)); // 輸出:[object Array]
```
需要注意的是,如果直接使用方法,則無法準確判斷null和undefined的類型??梢允褂?null)或(undefined)來判斷它們的類型。
綜上所述,JavaScript中判斷變量是否為對象可以使用typeof運算符、instanceof運算符以及方法。根據具體需求,選擇適合的方法即可。