someメソッド
配列に対して、コールバック関数で指定した条件に合致する(trueを返す)要素が1つでも
ある場合にtrueを返すメソッド。
例:配列内に文字型の要素が含まれるかどうかを判定する処理
const isString = function(elem){ return typeof elem === 'string'; }
const Array01 = [1, 2, 3 ,'4', 5, 'あ'];
const Array02 = [1, 2, 3 ,4, 5, 10];
const isIncludesString01 = Array01.some(isString);
const isIncludesString02 = Array02.some(isString);
console.log(isIncludesString01); // trueが返る
console.log(isIncludesString02); // falseが返る
内部の動き
(1) コールバック関数で、配列内要素を1つずつ取り出して条件に合致するかを確認する。
(2) 要素が条件に合致するか確認した結果、falseであれば次の要素の確認に進む。
(3) 要素が条件に合致するか確認した結果、trueであれば確認を終了し、trueを返す。
(4) 最後の要素まで確認が完了しfalseであればfalseを返し、終了する。
everyメソッド
配列に対して、全ての要素がコールバック関数で指定した条件に合致する(true)場合に
trueを返すメソッド。
例:配列内の要素が全て数値かどうかを判定する処理
const isNumber = function(elem){ return typeof elem === 'number'; }
const Array01 = [1, 2, 3 ,'4', 5, 'あ'];
const Array02 = [1, 2, 3 ,4, 5, 10];
const isAllNumber01 = Array01.every(isNumber);
const isAllNumber02 = Array02.every(isNumber);
console.log(isAllNumber01); // falseが返る
console.log(isAllNumber02); // trueが返る
内部の動き
(1) コールバック関数で、配列内要素を1つずつ取り出して条件に合致するかを確認する。
(2) 要素が条件に合致するか確認した結果、trueであれば次の要素の確認に進む。
(3) 要素が条件に合致するか確認した結果、falseであれば確認を終了し、falseを返す。
(4) 最後の要素まで確認が完了しtrueであればtrueを返し、終了する。