首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

SIMD.Bool64x2

SIMD.js已经从TC39中取消了积极的开发,并从第三阶段中删除了。它不再被网页浏览器所追求。暴露在 web 上的SIMD 操作在 WebAssembly 中正处于积极的发展之中, 其操作基于 SIMD. js 操作。

注意:Bool64x2类型目前不是SIMD规范草案的一部分。

SIMD.Bool64x2数据类型是一个128位的向量,分成2条通道存储布尔值。

语法

代码语言:javascript
复制
SIMD.Bool64x2(x, y);

参数

x可选的

一个 boolean布尔值,指定第一个通道的值。默认为false

y可选的

一个 boolean布尔值,指定第二个通道的值。默认为false。

构造函数

除了简单的构造函数之外,SIMD API还提供以下构造函数:

SIMD.Bool64x2.splat()创建一个Bool64x2,将所有通道设置为给定值。

注意: SIMD类型与new不起作用,因为SIMD值不是“盒装”对象(可参考 String(s) 与 new String(s) 创建 String对象 的比较)。

代码语言:javascript
复制
var v = new SIMD.Bool64x2(true, false); 
// TypeError: SIMD.Bool64x2 is not a constructor
var w = new SIMD.Bool64x2.splat(true); 
// TypeError: SIMD.Bool64x2.splat is not a constructor

与之替代的是:

代码语言:javascript
复制
var v = SIMD.Bool64x2(true, false); 
var w = SIMD.Boolt64x2.splat(true); 

运算

要在 simd 类型中实际执行某些操作, 需要使用 simd 数据类型。

检查SIMD类型

SIMD.Bool64x2.check()如果参数是有效的Bool64x2数据类型,则返回新的Bool64x2。TypeError否则抛出。

访问和变换通道

SIMD.Bool64x2.extractLane()返回给定通道的值。SIMD.Bool64x2.replaceLane()返回已替换给定通道值的新Bool64x2。

布尔运算

SIMD.Bool64x2.allTrue()检查是否所有通道都有true值。SIMD.Bool64x2.anyTrue()检查任何通道是否true有值。

按位逻辑操作

SIMD.Bool64x2.and()返回一个新的Bool64x2,其逻辑和为通道值(a & b)。

SIMD.Bool64x2.or()返回一个新的Bool64x2,其逻辑或为通道值(a | b)。

SIMD.Bool64x2.xor()返回一个新的Bool64x2,其中包含通道值(a ^ b)的逻辑XOR 。

SIMD.Bool64x2.not()返回一个新的Bool64x2,其值为逻辑非通道值(~a)。

SIMD原型

下面的方法和属性被安装在SIMD.Bool64x2.prototype

SIMD.Bool64x2.prototype.constructor指定创建SIMD对象原型的函数。

SIMD.Bool64x2.prototype.toLocaleString()返回表示SIMD类型及其元素的本地化字符串。重写该Object.prototype.toLocaleString()方法。

SIMD.Bool64x2.prototype.toString()返回表示SIMD类型及其元素的字符串。重写该Object.prototype.toString()方法。

SIMD.Bool64x2.prototype.valueOf()返回SIMD对象的原始值。

SIMD.Bool64x2.prototype.toSource()返回表示对象源代码的字符串。重写该Object.prototype.toSource()方法。

例子

构建一个Bool64x2

代码语言:javascript
复制
SIMD.Bool64x2(true, false); // Bool64x2[true, false]
SIMD.Bool64x2(1);           // Bool64x2[true, false]
SIMD.Bool64x2();            // Bool64x2[false, false]

规范

Bool64x2类型目前不是SIMD规范草案的一部分。

浏览器兼容性

Feature

Chrome

Firefox (Gecko)

Internet Explorer

Opera

Safari

Basic support

No support

Nightly build

No support

No support

No support

Feature

Android

Chrome for Android

Firefox Mobile (Gecko)

IE Mobile

Opera Mobile

Safari Mobile

Basic support

No support

No support

Nightly build

No support

No support

No support

扫码关注腾讯云开发者

领取腾讯云代金券

http://www.vxiaotou.com