diff options
author | Masahiro FUJIMOTO <mfujimot@gmail.com> | 2021-12-11 00:21:15 +0900 |
---|---|---|
committer | Masahiro FUJIMOTO <mfujimot@gmail.com> | 2021-12-19 03:03:48 +0900 |
commit | bef64616079cbcbd9c4eb3359f7644da5ebc33a6 (patch) | |
tree | 31d570ebf1001ace41d0fc6f2c5aafd2d8334674 /files/ja/web/javascript/reference/global_objects/atomics/or | |
parent | c3fdf27c2d7a26303ceffd2ee9394a4fc3195dce (diff) | |
download | translated-content-bef64616079cbcbd9c4eb3359f7644da5ebc33a6.tar.gz translated-content-bef64616079cbcbd9c4eb3359f7644da5ebc33a6.tar.bz2 translated-content-bef64616079cbcbd9c4eb3359f7644da5ebc33a6.zip |
2021/12/09 時点の英語版に同期
Diffstat (limited to 'files/ja/web/javascript/reference/global_objects/atomics/or')
-rw-r--r-- | files/ja/web/javascript/reference/global_objects/atomics/or/index.md | 107 |
1 files changed, 37 insertions, 70 deletions
diff --git a/files/ja/web/javascript/reference/global_objects/atomics/or/index.md b/files/ja/web/javascript/reference/global_objects/atomics/or/index.md index f391f8bc8c..38efc65500 100644 --- a/files/ja/web/javascript/reference/global_objects/atomics/or/index.md +++ b/files/ja/web/javascript/reference/global_objects/atomics/or/index.md @@ -6,114 +6,81 @@ tags: - JavaScript - メソッド - 共有メモリー +browser-compat: javascript.builtins.Atomics.or translation_of: Web/JavaScript/Reference/Global_Objects/Atomics/or --- {{JSRef}} -静的な <strong>Atomics</strong><strong>.or()</strong> メソッドは、配列内の指定した位置の値に指定した値でビット単位の OR を計算し、その位置にあった古い値を返します。これは不可分操作で、修正された値が書き戻されるまで、他の書き込みが起こらないことを保証します。 +静的な **`Atomics.or()`** メソッドは、配列内の指定した位置の値に指定した値でビット単位の OR を計算し、その位置にあった古い値を返します。これは不可分操作で、修正された値が書き戻されるまで、他の書き込みが起こらないことを保証します。 {{EmbedInteractiveExample("pages/js/atomics-or.html")}} -<div class="hidden">このデモのソースファイルは GitHub リポジトリに格納されています。デモプロジェクトに協力したい場合は、 <a href="https://github.com/mdn/interactive-examples">https://github.com/mdn/interactive-examples</a> をクローンしてプルリクエストを送信してください。</div> - ## 構文 -<pre class="syntaxbox notranslate">Atomics.and(typedArray, index, value) -</pre> +```js +Atomics.or(typedArray, index, value) +``` ### 引数 -- typedArray - <dd>整数の型付き配列です。 {{jsxref("Int8Array")}}, {{jsxref("Uint8Array")}}, {{jsxref("Int16Array")}}, {{jsxref("Uint16Array")}}, {{jsxref("Int32Array")}}, {{jsxref("Uint32Array")}}, {{jsxref("BigInt64Array")}}, {{jsxref("BigUint64Array")}} の何れかです。</dd> -- index - <dd>typedArray でビット単位の OR を計算する位置です。</dd> -- value - <dd>ビット単位の OR を取る数値です。</dd> +- `typedArray` + - : 整数の型付き配列です。 {{jsxref("Int8Array")}}, {{jsxref("Uint8Array")}}, {{jsxref("Int16Array")}}, {{jsxref("Uint16Array")}}, {{jsxref("Int32Array")}}, {{jsxref("Uint32Array")}}, {{jsxref("BigInt64Array")}}, {{jsxref("BigUint64Array")}} の何れかです。 +- `index` + - : `typedArray` でビット単位の OR を計算する位置です。 +- `value` + - : ビット単位の OR を取る数値です。 ### 返値 -指定された位置にあった古い値です (typedArray[index])。 +指定された位置 (`typedArray[index]`) にあった古い値です。 ### 例外 -- typedArray が許可された整数型の何れでもない場合、{{jsxref("TypeError")}} が発生します。 -- index が typedArray の範囲を超えている場合、 {{jsxref("RangeError")}} が発生します。 +- `typedArray` が許可された整数型の何れでもない場合、{{jsxref("TypeError")}} が発生します。 +- `index` が `typedArray` の範囲を超えている場合、 {{jsxref("RangeError")}} が発生します。 -<h2 id="Description" name="Description">解説</h2> +## 解説 ビット単位の OR 操作は、 a と b のどちらかが 1 であった場合に 1 を生成します。 OR 操作の真理値表を示します。 -<table class="standard-table"> - <thead> - <tr> - <th>a</th> - <th>b</th> - <th>a | b</th> - </tr> - </thead> - <tbody> - <tr> - <td>0</td> - <td>0</td> - <td>0</td> - </tr> - <tr> - <td>0</td> - <td>1</td> - <td>1</td> - </tr> - <tr> - <td>1</td> - <td>0</td> - <td>1</td> - </tr> - <tr> - <td>1</td> - <td>1</td> - <td>1</td> - </tr> - </tbody> -</table> - -例えば、ビット単位の OR を 5 | 1 で行うと、結果は 0101 すなわち10進数で5となります。 - -<pre class="notranslate">5 0101 +| `a` | `b` | `a \| b` | +| --- | --- | -------- | +| 0 | 0 | 0 | +| 0 | 1 | 1 | +| 1 | 0 | 1 | +| 1 | 1 | 1 | + +例えば、ビット単位の OR を 5 | 1 で行うと、結果は 0101 すなわち 10 進数で 5 となります。 + +```plain +5 0101 1 0001 ---- 5 0101 -</pre> +``` ## 例 -<h3 id="Using_or" name="Using_or">or の使用</h3> +### or の使用 -<pre class="brush: js notranslate">const sab = new SharedArrayBuffer(1024); +```js +const sab = new SharedArrayBuffer(1024); const ta = new Uint8Array(sab); ta[0] = 2; Atomics.or(ta, 0, 1); // returns 2, the old value -Atomics.load(ta, 0); // 3</pre> +Atomics.load(ta, 0); // 3 +``` -<h2 id="Specifications" name="Specifications">仕様書</h2> +## 仕様書 -<table class="standard-table"> - <thead> - <tr> - <th scope="col">仕様書</th> - </tr> - </thead> - <tbody> - <tr> - <td>{{SpecName('ESDraft', '#sec-atomics.or', 'Atomics.or')}}</td> - </tr> - </tbody> -</table> +{{Specifications}} -<h2 id="Browser_compatibility" name="Browser_compatibility">ブラウザーの互換性</h2> +## ブラウザーの互換性 -{{Compat("javascript.builtins.Atomics.or")}} +{{Compat}} -<h2 id="See_also" name="See_also">関連情報</h2> +## 関連情報 - {{jsxref("Atomics")}} - {{jsxref("Atomics.and()")}} |