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

View in English Always switch to English

DataView.prototype.setInt16()

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since 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

仕様書

Specification
ECMAScript® 2026 Language Specification
# sec-dataview.prototype.setint16

ブラウザーの互換性

関連情報