SIMD.Bool16x8
SIMD.Bool16x8
SIMD.js已经从TC39中取消了积极的开发,并从第三阶段中删除了。它不再被网页浏览器所追求。暴露在 web 上的SIMD 操作在 WebAssembly 中正处于积极的发展之中, 其操作基于 SIMD. js 操作。
SIMD.Bool16x8
数据类型是一个128-bit的向量,被分成8个存储布尔值的通道。
语法
SIMD.Bool16x8(s0, s1, s2, s3, s4, s5, s6, s7
参数
s[0-7]
可选的
构造函数
除了简单的创建者函数外,SIMD API还提供以下构造函数。
SIMD.Bool16x8.splat()
创建所有通道设置为给定值的Bool6x8。
注意:
SIMD类型与new
不起作用,因为SIMD值不是“盒装”对象(可参考String(s)
与new String(s)
创建String对象的 比较)。
var v = new SIMD.Bool16x8(true, true, true, true, false, false, false, false
// TypeError: SIMD.Bool16x8 is not a constructor
var w = new SIMD.Bool16x8.splat(true
// TypeError: SIMD.Bool16x8.splat is not a constructor
与之替代的是:
var v = SIMD.Bool16x8(true, true, true, true, false, false, false, false
var w = SIMD.Bool16x8.splat(true
操作
要在 simd 类型中实际执行某些操作, 需要使用 simd 数据类型。
检查SIMD类型
SIMD.Bool16x8.check()
如果参数是有效的Bool16x8数据类型,则返回新的Bool16x8。否则抛出TypeError
。
访问和变换通道
SIMD.Bool16x8.extractLane()
Returns the value of the given lane.SIMD.Bool16x8.replaceLane()
Returns a new Bool16x8 with the given lane value replaced.
布尔运算
SIMD.Bool16x8.allTrue()
检查是否所有通道都有true
值。
按位逻辑操作
SIMD.Bool16x8.and()
返回一个新的Bool16x8,带有通道值(a & b
)的逻辑与。
SIMD原型
下面的方法和属性被安装在SIMD.Bool16x8.prototype
。
SIMD.Bool16x8.prototype.constructor
指定创建SIMD对象原型的函数。
例子
构建一个Bool16x8
SIMD.Bool16x8(true, true, true, true, false, false, false, false
// Bool16x8[true, true, true, true, false, false, false, false]
SIMD.Bool16x8(true, false
// Bool16x8[true, false, false, false, false, false, false, false]
SIMD.Bool16x8(
// Bool16x8[false, false, false false, false, false, false, false]
规范
Specification | Status | Comment |
---|---|---|
SIMDThe definition of 'Bool16x8' in that specification. | Draft | Initial definition. |
浏览器兼容性
Feature | Chrome | Edge | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|---|
Basic support | No support | Nightly build | Nightly build | No support | No support | No support |
Feature | Android | Chrome for Android | Edge | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|---|
Basic support | No support | No support | Nightly build | Nightly build | No support | No support | No support |