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

JavaScript配列内のタイプのn番目のアイテムのインデックスを取得します


配列arr、を受け取るgetIndex()などの関数を作成する必要があります。 文字列/数値リテラルtxt と数字n txtのn番目の出現のインデックスを返す必要があります arr、 txtの場合 n回表示されない場合は、-1を返す必要があります。

それでは、このための関数を書いてみましょう-

const arr = [45, 76, 54, 43, '|', 54, '|', 1, 66, '-', '|', 34, '|', 5,
76];
const getIndex = (arr, txt, n) => {
   const position = arr.reduce((acc, val, ind) => {
      if(val === txt){
         if(acc.count+1 === n){
            acc['index'] = ind;
         };
         acc['count']++;
      }
      return acc;
   }, {
      index: -1,
      count: 0
   });
   return position.index;
};
console.log(getIndex(arr, '|', 3));
console.log(getIndex(arr, 54, 2));
console.log(getIndex(arr, '-', 3));

出力

コンソールの出力は-

になります
10
5
-1

  1. JavaScriptで合計のバランスを取るための配列インデックス

    問題 整数の配列arrを最初で唯一の引数として受け取るJavaScript関数を作成する必要があります。 この関数は、左側の要素の合計が右側の要素の合計と等しくなるように、配列からそのようなインデックスを1つ選択して返す必要があります。配列にそのようなインデックスが存在しない場合は、-1を返す必要があります。 たとえば、関数への入力が-の場合 入力 const arr = [1, 2, 3, 4, 3, 2, 1]; 出力 const output = 3; 出力の説明 インデックス3の両側の要素の合計が等しいため(6)。 例 以下はコードです- const arr =

  2. JavaScriptで配列の中央値インデックスを見つける

    問題 1次元空間内のさまざまな小惑星の位置を表す配列arrを取り込むJavaScript関数を作成する必要があります。 各小惑星について、絶対値はそのサイズを表し、符号はその方向を表します(正の意味は右、負の意味は左)。各小惑星は同じ速度で移動します。 私たちの機能は、すべての衝突後の小惑星の状態を見つけることになっています。 2つの小惑星が出会うと、小さい方の小惑星が爆発します。両方が同じサイズの場合、両方が爆発します。同じ方向に移動する2つの小惑星が出会うことはありません。 たとえば、関数への入力が-の場合 入力 const arr = [1, 7, 3, 6, 5, 6];