Join MDN and developers like you at Mozilla's View Source conference, 12-14 September in Berlin, Germany. Learn more at https://viewsourceconf.org

Float32Array

この記事は編集レビューを必要としています。ぜひご協力ください

概要

Float32Array タイプは、32 ビット浮動小数点数 (C 言語の float データタイプに相当します) の配列を表します。各要素のバイトオーダーはプラットフォームに依存します。もしコントロールしたい場合は代わりにDataViewを使って下さい。各要素は0で初期化されます。生成された Float32Array オブジェクトのメソッドあるいは配列のような表記法 ("[]") を用いて、要素を参照することができます。

構文

new Float32Array(length);
new Float32Array(typedArray);
new Float32Array(object);
​new Float32Array(buffer [, byteOffset [, length]]);

コンストラクタの構文とパラメータについての詳しい情報はTypedArrayを参照して下さい。

プロパティ

Float32Array.BYTES_PER_ELEMENT
要素一個あたりのバイト数を返します。Float32Array の場合は4です。
Float32Array.length
値は3になります。実際の長さ(要素数)についてはFloat32Array.prototype.lengthを参照して下さい。
Float32Array.name
コンストラクタ名を文字列値で返します。Float32Array の場合、"Float32Array"です
Float32Array.prototype
TypedArray オブジェクトのプロトタイプです。

メソッド

Float32Array.from()
配列状のオブジェクトやイテレート可能なオブジェクトから、新たな Float32Array オブジェクトを生成します。Array.from()も確かめて下さい。
Float32Array.of()
可変長引数で新しい Float32Array オブジェクトを生成します。Array.of()も確かめて下さい。

Float32Array プロトタイプ

全ての Float32Array オブジェクトは %TypedArray%.prototype を継承しています。

プロパティ

Float32Array.prototype.constructor
インスタンスのプロトタイプを作る関数を返します。これは、デフォルトで対応する Float32Array コンストラクタです。
Float32Array.prototype.buffer 読取専用
Float32Array オブジェクトによって参照されるArrayBufferを返します。構築時に設定され、読取専用となります。
Float32Array.prototype.byteLength 読取専用
ArrayBufferの開始位置からのFloat32Array オブジェクトの(バイト単位の)長さを返します。構築時に設定され、読取専用となります。
Float32Array.prototype.byteOffset 読取専用
ArrayBufferの開始位置からのFloat32Array オブジェクトの(バイト単位の)オフセットを返します。構築時に設定され、読取専用となります。
Float32Array.prototype.length 読取専用
Float32Array オブジェクト内に保持された要素の数を返します。構築時に設定され、読取専用となります。

メソッド

Float32Array.prototype.copyWithin()
配列内で一連の配列要素をコピーします。Array.prototype.copyWithin()も確かめて下さい。
Float32Array.prototype.entries()
配列内で各インデックスに対して、キー/バリュー ペアを含む新しいArray Iteratorを返します。Array.prototype.entries()も確かめて下さい。
Float32Array.prototype.every()
配列内のすべての要素が関数によって提供されたテストに合格するかどうかテストを実行します。Array.prototype.every()も確かめて下さい。
Float32Array.prototype.fill()
開始位置から終了位置までの配列のすべての要素を固定値で設定します。Array.prototype.fill()も確かめて下さい。
Float32Array.prototype.filter()
与えられたフィルタリング関数がtrueを返す配列のすべての要素をもつ新しい配列を生成します。Array.prototype.filter()も確かめて下さい。
Float32Array.prototype.find()
配列要素が与えられたテスト関数を満足したら、配列の値を返します。満足しなかった場合、undefinedを返します。 Array.prototype.find()を確かめて下さい。
Float32Array.prototype.findIndex()
配列要素が与えられたテスト関数を満足したら、配列のインデックスを返します。満足しなかった場合、-1を返します。Array.prototype.findIndex()も確かめて下さい。
Float32Array.prototype.forEach()
配列内の各要素に対する関数を呼び出します。Array.prototype.forEach()も確かめて下さい。
Float32Array.prototype.includes() 
typed arrayがある要素を含むかどうか判断し、それに応じて、truefalseを返します。 Array.prototype.includes()も確かめて下さい。
Float32Array.prototype.indexOf()
指定された値に等しい配列内の要素の最初のインデックスを返します。見つからない場合、-1を返します。Array.prototype.indexOf()も確かめて下さい。
Float32Array.prototype.join()
すべての配列要素を文字列に結合します。Array.prototype.join()も確かめて下さい。
Float32Array.prototype.keys()
配列内の各インデックスに対するキーを含む新しいArray Iteratorを返します。Array.prototype.keys()も確かめて下さい。
Float32Array.prototype.lastIndexOf()
指定された値と等しい配列の要素の最後のインデックスを返します。見つからない場合、-1を返します。Array.prototype.lastIndexOf()を確かめて下さい。
Float32Array.prototype.map()
この配列のすべての要素で与えられた関数を呼び出した結果をもつ新しい配列を生成します。Array.prototype.map()も確かめて下さい。
Float32Array.prototype.move() 未実装
TypedArray.prototype.copyWithin()の以前の非標準バージョン
Float32Array.prototype.reduce()
アキュムレータに対して関数を適用し、隣り合う二つのtyped arrayの要素(左から右へ)は単一の値になります。Array.prototype.reduce()も確かめて下さい。
Float32Array.prototype.reduceRight()
アキュムレータに対して関数を適用し、隣り合う二つのtyped arrayの要素(右から左へ)は単一の値になります。Array.prototype.reduceRight()を確かめて下さい。
Float32Array.prototype.reverse()
配列要素の順番を反転させます。— 最初の要素は最後になり、最後の要素は最初になります。Array.prototype.reverse()も確かめて下さい。
Float32Array.prototype.set()
入力値を指定した配列から読み込み、typed array内に複数の値を格納します。
Float32Array.prototype.slice()
配列の一部を取り出して新しい配列を返します。Array.prototype.slice()も確かめて下さい。
Float32Array.prototype.some()
ある配列の少なくとも 1 つの要素が与えられたテスト関数を満たした場合にtrueを返します。Array.prototype.some()も確かめて下さい。
Float32Array.prototype.sort()
配列の要素をソートし、その結果を返します。Array.prototype.sort()も確かめて下さい。
Float32Array.prototype.subarray()
与えられた開始位置と終了位置の要素インデックスの新しいFloat32Array オブジェクトを返します。
Float32Array.prototype.values()
配列内で各インデックスに対する値を含む新しいArray Iteratorオブジェクトを返します。Array.prototype.values()を確かめて下さい。
Float32Array.prototype.toLocaleString()
配列と要素を表すローカライズされた文字列を返します。Array.prototype.toLocaleString()も確かめて下さい。
Float32Array.prototype.toString()
配列と要素を表す文字列を返します。Array.prototype.toString()も確かめて下さい。
Float32Array.prototype[@@iterator]()
配列内で各インデックスに対する値を含む新しいArray Iteratorオブジェクトを返します。

// From a length
var float32 = new Float32Array(2);
float32[0] = 42;
console.log(float32[0]); // 42
console.log(float32.length); // 2
console.log(float32.BYTES_PER_ELEMENT); // 4

// From an array
var arr = new Float32Array([21,31]);
console.log(arr[1]); // 31

// From another TypedArray
var x = new Float32Array([21, 31]);
var y = new Float32Array(x);
console.log(y[0]); // 21

// From an ArrayBuffer
var buffer = new ArrayBuffer(16);
var z = new Float32Array(buffer, 0, 4);

仕様

仕様書 策定状況 コメント
Typed Array Specification Obsolete ECMAScript 6 で置き換えられました。
ECMAScript 2015 (6th Edition, ECMA-262)
The definition of 'TypedArray constructors' in that specification.
Standard ECMA 標準では最初の定義。new 演算子が必要なことが仕様書に含まれました。
ECMAScript 2016 Draft (7th Edition, ECMA-262)
The definition of 'TypedArray constructors' in that specification.
ドラフト  

ブラウザ実装状況

機能 Chrome Firefox (Gecko) Internet Explorer Opera Safari
基本サポート 7.0 4.0 (2) 10 11.6 5.1
new が必要 ? 44 (44) ? ? ?
機能 Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Basic support 4.0 (有) 4.0 (2) 10 11.6 4.2
new が必要 ? ? 44.0 (44) ? ? ?

互換性について

ECMAScript 2015 (ES6)から、Float32Array コンストラクタでインスタンスを生成する場合、 new 演算子が必要となります。 Float32Array を new 演算子を使用せずに関数呼び出しした場合、TypeError 例外が投げられるでしょう。

var dv = Float32Array([1, 2, 3]);
// TypeError: calling a builtin Float32Array constructor
// without new is forbidden
var dv = new Float32Array([1, 2, 3]);

関連情報

ドキュメントのタグと貢献者

 このページの貢献者: syu_kato, teoli, ethertank, yyss
 最終更新者: syu_kato,