• 首页
  • vue
  • TypeScript
  • JavaScript
  • scss
  • css3
  • html5
  • php
  • MySQL
  • redis
  • jQuery
  • Atomics.sub()

    Atomics.sub()静态方法在数组中的给定位置减去给定值,并返回该位置的旧值。这个原子操作保证在修改后的值被写回之前不会发生其他写操作。

    尝试一下

    语法

    Atomics.sub(typedArray, index, value)
    

    参数

    typedArray

    一个共享的整型 typed array。例如Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,或者Uint32Array.

    index

    要被value值减去的typedArray索引位置。

    value

    要减去的数字。

    返回值

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

    异常

    • 假如typedArray不是允许的整型之一,则抛出TypeError
    • 假如typedArray不是一个共享的整型 typed array,则抛出TypeError
    • 如果index超出了typedArray的边界,则抛出RangeError

    例子

    const sab = new SharedArrayBuffer(1024);
    const ta = new Uint8Array(sab);
    ta[0] = 48;
    
    Atomics.sub(ta, 0, 12); // returns 48, the old value
    Atomics.load(ta, 0); // 36
    

    上篇:Atomics.add()

    下篇:Atomics.exchange()