Javascript
 Computer >> コンピューター >  >> プログラミング >> Javascript

Javascript配列内の要素を検索する


Javascriptは、配列内の要素を検索するために使用できる関数のコレクションを提供します。最も基本的なものから始めましょう。 indexOf関数は配列全体を調べ、検索した要素のインデックスを返します。見つかった場合は-1を返します。たとえば、

let people = ["Harry", "Martha", "John", "Sam"];
console.log(people.indexOf("John"))
console.log(people.indexOf("Jim"))

出力

これにより、出力が得られます-

2
-1

検索をより強力にするために使用できる、他のより複雑な関数があります。 find()メソッドを見てみましょう。 find()メソッドは、callback()メソッドとして指定した条件に一致する最初のオブジェクトを返します。たとえば、

let people = [{
   name: 'Agnes',
   age: 25
}, {
   name: 'Richard',
   age: 21
}, {
   name: 'Zoe',
   age: 35
}];
let personNameStartsWithR = people.find(person => person.name[0] === 'R');
console.log(personNameStartsWithR)

出力

これにより、出力が得られます-

{ name: 'Richard', age: 21 }

しかし、上記の結果は私たちにオブジェクトを与えます。 findIndex関数を使用して、このオブジェクトのインデックスを見つけることができます。たとえば、

let people = [{
   name: 'Agnes',
   age: 25
}, {
   name: 'Richard',
   age: 21
}, {
   name: 'Zoe',
   age: 35
}];
let personNameStartsWithR = people.findIndex(person => person.name[0] === 'R');
console.log(personNameStartsWithR)

出力

これにより、出力が得られます-

1

find()関数とfindindex()関数はコールバックを引数として受け取り、コールバックは引数(element、index、array)を受け取ることに注意してください。これらの関数は、要素の最初の出現のみを提供します。 indexOf関数は、別のパラメーターfromIndexも受け取るため、その時点から検索を続行できます。たとえば、

let people = ["Harry", "Martha", "John", "Sam", "Martha"];
console.log(people.indexOf("Martha"));
console.log(people.indexOf("Martha", 3))

出力

これにより、出力が得られます-

1
4

  1. 配列の最後の要素を出力するJavaScriptコード

    以下は、配列の最後の要素を出力するコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> <style>    bod

  2. JavaScript配列を条件付きで結合しますか?

    以下は、JavaScriptの条件を持つJavaScript配列のコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> <style>