配列内の要素を全てチェックする (some)
説明
配列内の要素内に指定した条件を満たす要素があるかどうかをチェックするにはsome()を使います。最初のパラメータに要素を調べる際に呼び出すためのコールバック関数、2番目には最初のパラメータで呼び出すコールバック関数内でthisとして指定するオブジェクトを指定します。最初のパラメータで呼び出すコールバック関数には3つのパラメータが渡されます。最初のパラメータには要素内容、2番目のパラメータには渡された要素の参照番号(インデックス)、3番目のパラメータには配列全体(オブジェクト)が渡されます。コールバック関数内で処理した結果、条件を満たす要素がありtrueを返した場合、some()の戻り値がtrueになります。条件を満たしている要素が全くなかった場合にはsome()メソッドの戻り値はfalseになります。IE6, IE7では動作しません。
サンプルプログラム
var ary1 = [10,-2, 0,7,8,12];
var flag1 = ary1.some(valueCheck);
document.write("ary1 : "+flag1+"<br>");
var ary2 = [10, 32, 0,7,8,12];
var flag2 = ary2.some(valueCheck);
document.write("ary2 : "+flag2+"<br>");
// check function
function valueCheck(ele, index, array){
if (ele < 0) {
return true;
}else{
return false;
}
}