SIMD.Bool32x4
SIMD.js已经从TC39中取消了积极的开发,并从第三阶段中删除了。它不再被网页浏览器所追求。暴露在 web 上的SIMD 操作在 WebAssembly 中正处于积极的发展之中, 其操作基于 SIMD. js 操作。
SIMD.Bool32x4 数据类型是一个128-bit的向量,被分成4个存储布尔值的通道。
语法
SIMD.Bool32x4(x, y, z, w);
参数
x
OptionalA布尔值,指定第一个通道的值。默认为false
。y
OptionalA布尔值,指定第二个通道的值。默认为false
。z
OptionalA布尔值,指定第三个通道的值。默认为false
。w
OptionalA布尔值,指定第四个通道的值。默认为false
。
构造函数
除了简单的构造函数外,SIMD API还提供以下构造函数。
SIMD.Bool32x4.splat()
创建所有通道设置为给定值的Bool32x4。
注意: SIMD类型与new不起作用,因为SIMD值不是“盒装”对象(可参考 String(s) 与 new String(s) 创建 String对象 的比较)。
var v = new SIMD.Bool32x4(true, false, true, false);
// TypeError: SIMD.Bool32x4 is not a constructor
var w = new SIMD.Bool32x4.splat(true);
// TypeError: SIMD.Bool32x4.splat is not a constructor
与之替代的是:
var v = SIMD.Bool32x4(true, false, true, false);
var w = SIMD.Bool32x4.splat(true);
运算
要在 simd 类型中实际执行某些操作, 需要使用 simd 数据类型。
检查SIMD类型
SIMD.Bool32x4.check()
如果参数是有效的Bool32x4数据类型,则返回新的Bool32x4。TypeError
否则抛出。
访问和变换通道
SIMD.Bool32x4.extractLane()
返回给定通道的值。SIMD.Bool32x4.replaceLane()
返回已替换给定通道值的新Bool16x8。
布尔运算
SIMD.Bool32x4.allTrue()
检查是否所有通道都有true
值。SIMD.Bool32x4.anyTrue()
检查任一通道是否true
有值。
按位逻辑操作
SIMD.Bool32x4.and()
返回一个新的Bool32x4,其逻辑和为通道值(a & b
)。
SIMD.Bool32x4.or()
返回一个新的Bool32x4,其逻辑或为通道值(a | b
)。
SIMD.Bool32x4.xor()
返回一个带有通道值(a ^ b
)的逻辑XOR的新Bool32x4 。
SIMD.Bool32x4.not()
返回带有车道值(~a
)的逻辑非的新的Bool32x4 。
SIMD原型
下面的方法和属性被安装在SIMD.Bool32x4.prototype
。
SIMD.Bool32x4.prototype.constructor
指定创建SIMD对象原型的函数。
SIMD.Bool32x4.prototype.toLocaleString()
返回表示SIMD类型及其元素的本地化字符串。重写该Object.prototype.toLocaleString()
方法。
SIMD.Bool32x4.prototype.toString()
返回表示SIMD类型及其元素的字符串。重写该Object.prototype.toString()
方法。
SIMD.Bool32x4.prototype.valueOf()
返回SIMD对象的原始值。
SIMD.Bool32x4.prototype.toSource()
返回表示对象源代码的字符串。重写该Object.prototype.toSource()
方法。
语法
构建一个Bool32x4
SIMD.Bool32x4(true, false, true, false); // Bool32x4[true, false, true, false]
SIMD.Bool32x4(true, false); // Bool32x4[true, false, false, false]
SIMD.Bool32x4(); // Bool32x4[false, false, false, false]
规范
Specification | Status | Comment |
---|---|---|
SIMDThe definition of 'Bool32x4' 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 |
本文档系腾讯云开发者社区成员共同维护,如有问题请联系 cloudcommunity@tencent.com