Get to know MDN better
このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。
This feature is well established and works across many devices and browser versions. It’s been available across browsers since 2017年10月.
WebAssembly.Memory() コンストラクターは新しい Memory オブジェクトを生成します。これは buffer プロパティがサイズ変更可能な ArrayBuffer または SharedArrayBuffer であり、 WebAssembly の Instance からアクセスする生のバイト列のメモリーであるものです。
JavaScript または WebAssembly コードから生成されたメモリーは JavaScript と WebAssembly のどちらからもアクセス、変更が可能になります。
以下のメンバーを含むことができるオブジェクトです。
initialWebAssembly メモリーの初期サイズで、単位は WebAssembly ページ数です。
maximum 省略可WebAssembly メモリーを拡張できる最大サイズで、単位は WebAssembly ページ数です。存在する場合、 maximum 引数はエンジンがメモリーを予約するヒントとして使用されます。ただし、エンジンはこの予約リクエストを無視したり固定したりすることがあります。一般的に、ほとんどの WebAssembly モジュールでは maximum を設定する必要はありません。
shared 省略可論理値で、このメモリーを共有メモリーにするかどうかを定義します。 true に設定すると、共有メモリーになります。既定値は false です。
メモ: WebAssembly ページは 65,536 バイト、すなわち 64KiB の固定長です。
WebAssembly.Memory オブジェクトを取得する方法は 2 つあります。 1 つ目は JavaScript から構築する方法です。次の例では、新しい WebAssembly Memory インスタンスを初期サイズが 10 ページ (640KiB) 、最大サイズが 100 ページ (6.4MiB) で生成しています。この buffer プロパティは ArrayBuffer を返します。
2 つ目は WebAssembly モジュールからエクスポートされた WebAssembly.Memory オブジェクトを使用する方法です。次の例では (GitHub 上の memory.html および動作例も参照)、 memory.wasm バイトコードを WebAssembly.instantiateStreaming() メソッドで読み込みんでインスタンス化し、その上の行で生成されたメモリーにインポートします。それから、メモリーにいくつかの値を格納し、関数をエクスポートして使用し、いくつかの値を合計します。
既定では、 WebAssembly のメモリーは共有されていません。共有メモリーを作成するには、コンストラクター の初期化オブジェクトに shared: true を渡してください。
このメモリーの buffer プロパティは SharedArrayBuffer を返します。
| WebAssembly JavaScript Interface # dom-memory-memory |
Enable JavaScript to view this browser compatibility table.
This page was last modified on 2025年6月24日 by MDN contributors.
Your blueprint for a better internet.
Visit Mozilla Corporation’s not-for-profit parent, the Mozilla Foundation.
Portions of this content are ©1998–2026 by individual mozilla.org contributors. Content available under a Creative Commons license.