var arr = [1,2,3]; //方法一: function isArray1(arr){ return Object.prototype.toString.call(arr) === '[object Array]'; } //方法二: function isArray2(arr){ return arr.constructor.name === 'Array'; } //方法三: function isArray3(arr){ return arr instanceof Array; }
//方法三注意事項:
var myFrame = document.createElement('iframe'); document.body.appendChild(myFrame); var myArray = window.frames[window.frames.length-1].Array; var arr = new myArray(a,b,10); // [a,b,10] // myArray 的構造器已經丟失,instanceof 的結果將不正常 // 構造器是不能跨 frame 共享的 arr instanceof Array; // false
//判斷是否是數字 function isNumber(n){ return !isNaN(parseFloat(n)) && isFinite(n); }