JavaScript入門 練習問題 51:配列メソッド:条件に一致する最初の要素の取得
次のコードを実行したときのコンソールへの出力として正しいものはどれですか?
```javascript
const numbers = [10, 20, 30, 40];
const result = numbers.find(num => num > 15);
console.log(result);
```
- コンソールに 20 と出力される。
- コンソールに [20, 30, 40] と出力される。
- コンソールに 1 と出力される。
- コンソールに true と出力される。
- コンソールに 30 と出力される。
正解と解説を見る
正解:コンソールに 20 と出力される。
コンソールには 20 と出力されるのが正解です。
【正解の理由】
配列の `find` メソッドは、指定した条件(コールバック関数(=引数として渡される関数)がtrueを返す条件)に最初に一致した要素の値を返します。15より大きい最初の数値は 20 なので、20 が返されます。
【不正解の理由】
• 「コンソールに [20, 30, 40] と出力される。」は、条件を満たす全要素を返す `filter` メソッドの挙動であるため誤り
• 「コンソールに 1 と出力される。」は、要素のインデックスを返す `findIndex` メソッドの挙動であるため誤り
• 「コンソールに true と出力される。」は、真偽値を返す `some` などの挙動であるため誤り
• 「コンソールに 30 と出力される。」は、最初に一致する要素ではないため誤り