このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。

View in English Always switch to English

DataView.prototype.setInt16()

Baseline 広く利用可能

この機能は広く実装されており、多くのバージョンの端末やブラウザーで動作します。2015年7月以降、すべてのブラウザーで利用可能です。

setInt16()DataView インスタンスのメソッドで、数値を受け取り、符号付き 16 ビット整数として、この DataView の指定されたバイトオフセットから始まる 2 バイトに格納します。アラインメント制約はなく、マルチバイトの値は範囲内の任意のオフセットに格納できます。

試してみましょう

// ArrayBuffer をバイト単位のサイズで作成
const buffer = new ArrayBuffer(16);

const view = new DataView(buffer);
view.setInt16(1, 32767); // 符号付き 16 ビット整数の最大値

console.log(view.getInt16(1));
// 予想される結果: 32767

構文

js
setInt16(byteOffset, value)
setInt16(byteOffset, value, littleEndian)

引数

byteOffset

データを格納するビューの先頭からのバイト単位のオフセットです。

value

設定する値。値がどのようにバイト列にエンコードされるかについては、値のエンコード方式と正規化を参照してください。

littleEndian 省略可

データをリトルエンディアンまたはビッグエンディアンのどちらの形式で格納するかを示します。false または undefined の場合、ビッグエンディアンの値が書き込まれます。

返値

undefined です。

発生するエラー

RangeError

byteOffset がビューの末尾を越えて格納するように設定されたときに発生します。

setInt16() メソッドの使用

js
const buffer = new ArrayBuffer(10);
const dataview = new DataView(buffer);
dataview.setInt16(0, 3);
dataview.getInt16(1); // 768

仕様書

仕様書
ECMAScript® 2027 Language Specification
# sec-dataview.prototype.setint16

ブラウザーの互換性

関連情報