/*判斷乙個物件是不是陣列:幾種辦法
typeof無法區分物件和陣列:typeof object
typeof {} object
1. var obj={};var obj=;var obj=function(){};
obj instanceof 建構函式名/型別名(array,function,...)
2. array.prototype.isprototypeof(obj)
*3. object.prototype.tostring.call(obj) [object array]
4. es5: array.isarray(obj)
obj是陣列,則返回true,否則返回false!
判斷並實現自定義isarray方法:
*/
//判斷array的isarray是否有效,如果無效if(!array.isarray)else
} }
document.write(array.isarray({})+"
");//false
document.write(array.isarray()+"
");//true
//迭代api:
//every:判斷陣列中所有元素是否都為偶數
var
arr1=[1,2
,3,4
,5];
var
arr2=[2,4
,6,8
,10];
console.log(
arr1.every(function(value,index,array))
);//false
console.log(
arr2.every(function(value,index,array))
);//true
/* some: 判斷陣列中是否*包含*滿足條件的元素
只要有乙個滿足就返回true
只有都不滿足時才返回false*/
console.log(
arr1.some(function(value,index,array))
);//true
console.log(
arr2.some(function(value,index,array))
);//false
//foreach: 對原陣列中每個元素執行相同操作
var
arr=[1,2
,3,4
,5];
console.log(string(arr));
//1,2,3,4,5
arr.foreach(function(value,index,array));
/**map: 將原陣列中每個元素,經過加工,生成乙個*新陣列*
var newarr=arr.map(function(value,index,array))*/
var
newarr=arr.map(function(value,index,array));
console.log(string(arr));
//2,4,6,8,10
console.log(string(newarr));
//4,8,12,16,20
//filter: 查詢陣列中符合條件的元素,組成新陣列
var
subarr=arr.filter(function(value,index,array));
console.log(string(subarr));
//2,4,6,8,10
//reduce: 彙總陣列中每個元素
var
result=arr.reduce(
function(prev,value,index,array),
100
); console.log(result);
//130
判斷乙個物件是不是陣列的方法
判斷乙個物件是不是陣列的方法 1 typeof 無法判斷 只能判斷原始型別的值和函式 2 isprototypeof 判斷父及物件 可檢查整個原型鏈 可能繼承自陣列 console.log array.prototype.isprototypeof 是陣列 不是陣列 console.log arra...
判斷乙個物件是不是陣列型別,最全方法
判斷乙個物件是不是陣列型別,可以分為判斷原型物件,判斷建構函式和判斷內部class屬性三大類,下面 是所有方法。判斷乙個物件是不是陣列型別 var a 10,b hello c true d null e undefined varf function var obj1 obj2 0 1,2 obj...
如何判斷乙個物件是不是數值
要判斷乙個物件是不是陣列的方式有多種,這裡我們乙個乙個來分析 在使用array.isarray方法之前,我們先來普及一下它的作用以及如何使用 作用 它是用於判斷某個物件是否是陣列 使用 語法格式 array.isarray 物件 下面我們就用乙個小例項來看看它怎麼判斷乙個物件是不是陣列 functi...