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

JavaScript TypedArray values()メソッドの使い方とサンプルコード解説

TypedArray.values()メソッドとは

TypedArrayオブジェクトが持つvalues()メソッドは、型付き配列(typed array)に格納されている各要素の値を保持するイテレーターオブジェクトを返します。

返されたイテレーターオブジェクトに対してnext()メソッドを呼び出すたびに、{ value: 値, done: 真偽値 }という形式のオブジェクトが1つずつ返され、配列内の要素を先頭から順番に取り出すことができます。すべての要素を取り出し終えると、doneプロパティがtrueになります。

構文

values()メソッドの基本的な構文は以下の通りです。

typedArray.values()

引数は不要で、呼び出すだけでイテレーターオブジェクトが取得できます。

使用例

実際にInt32Arrayに対してvalues()メソッドを使用し、next()で要素を順番に取り出すサンプルコードです。

<html>
<head>
    <title>JavaScript Example</title>
</head>
<body>
    <script type="text/javascript">
        var typedArray = new Int32Array([11, 5, 13, 4, 15, 3, 17, 2, 19, 8]);
        var iterator = typedArray.values();
        document.write("Contents of the typed array: ");
        for(i=0; i<typedArray.length; i++) {
            document.writeln(iterator.next().value);
        }
    </script>
</body>
</html>

実行結果

Contents of the typed array: 11 5 13 4 15 3 17 2 19 8

補足:for...of文との組み合わせ

values()が返すのは標準的なイテレーターオブジェクトなので、for...of文と組み合わせると、より簡潔にすべての要素を走査できます。

var typedArray = new Int32Array([11, 5, 13, 4, 15]);
for (const value of typedArray.values()) {
    console.log(value);
}

なお、TypedArray自体も反復可能(iterable)であるため、for (const value of typedArray)のように直接ループさせることも可能です。要素のインデックスが必要な場合はkeys()メソッド、値とインデックスの両方が必要な場合はentries()メソッドを使うと便利です。

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

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

  2. JavaScriptのArray.values()メソッドとは?使い方とサンプルコードを徹底解説

    JavaScriptのArray.values()メソッドとは? JavaScriptのArray.values()メソッドは、対象の配列に含まれるすべての値を格納したイテレーターオブジェクトを返します。ES2015(ES6)以降で利用可能なこのメソッドは、for...ofループやスプレッド構文([...arr])と組み合わせることで、配列の各要素を効率的に取り出せます。 なお、keys()やentries()がインデックス情報も一緒に返すのに対し、values()は純粋に「値」だけを順番に提供する点が大きな特徴です。 基本構文 arr.values() 引数は不要で、戻り値として新しいArr