配列内の値を検索する

配列内に特定の値があるか検索する方法をメモ。

サンプルコード

for文で調べる方法です。

JavaScript

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
// 検索する配列
var arr = ['a', 'b', 'c', 'd', 'e'];
 
// 1つ目のサンプル
var serachStr = 'c'; // 検索する文字列
var result = false// 結果
for (var i = 0; i < arr.length; i++) {
    // 一致する文字列が見つかった場合は結果をtrueに変更する
    if(arr[i] === serachStr) {
        result = true;
        break;
    }
}
console.log('1番目', result); // true
 
// 2つ目のサンプル
serachStr = 'f'; // 検索する文字列
result = false// 結果
for (var i = 0; i < arr.length; i++) {
    // 一致する文字列が見つかった場合は結果をtrueに変更する
    if(arr[i] === serachStr) {
        result = true;
        break;
    }
}
console.log('2番目', result); // false

配列内の値を検索するデモページ
 

次に、indexOf()を使う方法です。
indexOf()は指定した値が配列の何番目にあるかを返すメソッドで、配列内にない場合は-1を返します。

JavaScript

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
// 検索する配列
var arr = ['a', 'b', 'c', 'd', 'e'];
 
// 1つ目のサンプル
var serachStr = 'c'; // 検索する文字列
var result = arr.indexOf(serachStr);
console.log('1番目', result); // 2
// 一致する文字列が見つかった場合
if(result >= 0) {
    console.log('ありました');
} else {
    console.log('ありませんでした');
}
 
// 2つ目のサンプル
serachStr = 'f'; // 検索する文字列
result = arr.indexOf(serachStr);
console.log('2番目', result); // -1
// 一致する文字列が見つかった場合
if(result >= 0) {
    console.log('ありました');
} else {
    console.log('ありませんでした');
}

配列内にあるかどうかを判定する場合、indexOf()の戻り値が0以上かどうかで判定できます。
配列内の値を検索するデモページ2
 

関連記事

コメントを残す

メールアドレスが公開されることはありません。
* が付いている欄は必須項目です

CAPTCHA


コメントが承認されるまで時間がかかります。

2025年4月
 12345
6789101112
13141516171819
20212223242526
27282930