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

JavaScriptのTypedArray.forEach()メソッドとは?構文と使い方を実例で解説

TypedArrayオブジェクトのforEach()メソッドは、型付き配列内のすべての要素に対して、指定したコールバック関数を先頭から順番に1回ずつ実行するためのメソッドです。通常のArrayオブジェクトのforEach()とほぼ同じように動作しますが、呼び出し対象が型付き配列(Int32Arrayなど)である点が特徴です。

基本構文

typedArray.forEach(callback[, thisArg])

コールバック関数に渡される引数

  • element:現在処理中の要素の値
  • index:現在処理中の要素のインデックス(0から始まる)
  • array:forEach()が呼び出された元のTypedArrayそのもの

第2引数のthisArgを指定すると、コールバック関数内でのthisの参照先を変更できます。

使用例

次の例では、Int32Arrayの各要素に100を加算した結果を出力しています。コールバック関数には「element(要素の値)、index(インデックス)、array(配列本体)」という3つの引数が自動的に渡されます。

<html>
<head>
   <title>JavaScript TypedArray forEach Method</title>
</head>
<body>
   <script type="text/javascript">
      var int32View = new Int32Array([21, 19, 65, 21, 14, 66, 87, 55]);
      document.write("Contents of the typed array: "+int32View);
      document.write("<br>");
      document.write("Result: ");
      function testResult(element, index, array) {
         document.writeln(element+100);
      }
      int32View.forEach(testResult);
   </script>
</body>
</html>

実行結果

Contents of the typed array: 21,19,65,21,14,66,87,55
Result: 121 119 165 121 114 166 187 155

このように、配列の各要素(21, 19, 65...)に対して100が加算され、121, 119, 165...という結果が順番に出力されていることがわかります。

forEach()を使う際のポイント

  • forEach()は常にundefinedを返します。処理結果をもとに新しい配列を作りたい場合は、map()を使用してください。
  • コールバック関数の中で要素を書き換えると、元のTypedArrayの内容も更新されます。
  • 本記事のサンプルでは説明のためdocument.write()を使っていますが、現代の開発ではconsole.log()の出力利用が推奨されています。
  • 型付き配列は生成時に長さが固定されるため、途中で要素が追加・削除されることはなく、すべての要素が確実に処理対象となります。
  1. JavaScriptのTypedArray.set()メソッドとは?使い方をサンプルコードで解説

    TypedArrayオブジェクトのset()メソッドは、配列(または別の型付き配列)とインデックスを表す数値を受け取り、指定された配列の内容を現在の型付き配列に、指定したインデックスの位置から順にコピーします。既存の要素がある場合は、その位置から上書きされる点に注意してください。 構文 set()メソッドの構文は以下の通りです。 typedArray.set(array, offset) array: コピー元となる通常の配列、または別の型付き配列を指定します。 offset: コピーを開始するインデックス位置を指定します。省略した場合は0(先頭)からコピーされます。 使用例 以下の例では

  2. JavaScriptのTypedArray.reverse()関数とは?使い方とサンプルコードを解説

    JavaScriptにおけるreverse()関数は、TypedArrayオブジェクトが持つメソッドの一つで、型付き配列(typed array)の要素の並び順を逆にするために使用されます。この記事では、reverse()関数の基本的な構文と、実際のコード例を使った動作について詳しく解説します。基本情報reverse()メソッドは、呼び出し元の型付き配列そのものを反転させ、その結果として同じ配列への参照を返します。つまり、元の配列が直接変更される(破壊的メソッドである)点に注意が必要です。構文reverse()関数の構文は以下の通りです。引数は不要で、非常にシンプルに使えます。typedArr