在线文档教程

Atomics.or

Atomics.or

静态Atomics.or()方法计算数组中给定位置的按位或给定值, 并返回该位置的旧值。此原子操作保证在修改后的值被写回之前不会发生其他写入。

语法

Atomics.or(typedArray, index, value)

参数

typedArray 共享整数类型化数组。Int8Array、Uint8Array、Int16Array、Uint16Array、Int32Array 或 Uint32Array.

返回值

给定位置的旧值(typedArray[index])。

异常

  • 如果 typedArray 不是允许的整数类型之一, 则抛出 TypeError。

  • 如果 typedArray 不是共享类型的数组类型, 则抛出 TypeError。

  • 如果索引在 typedArray 中超出界限, 则抛出 RangeError。

描述

如果 a 或 b 为 1, 则按位 or 运算生成1。"OR" 操作的真值表为:

aba | b
000
011
101
111

例如, 按位或5和1的结果在0101中是5的十进制。

5 0101 1 0001 ---- 5 0101

示例

var sab = new SharedArrayBuffer(1024 var ta = new Uint8Array(sab ta[0] = 2; Atomics.or(ta, 0, 1 // returns 2, the old value Atomics.load(ta, 0 // 3

规范

SpecificationStatusComment
ECMAScript Latest Draft (ECMA-262)The definition of 'Atomics.or' in that specification.DraftInitial definition in ES2017.

浏览器兼容性

FeatureChromeEdgeFirefox (Gecko)Internet ExplorerOperaSafari
Basic supportNo support 2No support55 (55) 1No supportNo supportNo support

FeatureAndroidChrome for AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic supportNo supportNo support55.0 (55) 1No supportNo supportNo support