1. instanceof在判斷數組是,即會把數組當做Array類型,又會把數組當做Object類型,都會返回true。要嚴格驗證一個數組,最好是用constructor,能嚴格區分數組和對象。注意:大部分情況都可以用instanceof判斷是否是數組,但是在判斷一個變量是對象或非對象時,會存在坑,如:
if (arr instanceof Object) { //當arr可能是[1]或{id:1,name:"Ace"},當arr爲[1]時會把arr
//instanceof Object會返回true,進而執行arr.id,從而報錯。
return arr.id
} else {
return arr[0]
}