WGSLLanguageFeatures

实验性: 这是一个 实验性技术
在生产环境中使用此功能前,请仔细查看 浏览器兼容性表格

安全上下文:此功能仅在 安全上下文(HTTPS)中可用,在某些或所有 支持的浏览器 中。

WebGPU APIWGSLLanguageFeatures 接口是一个 类似集合 的对象,它报告 WebGPU 实现支持的 WGSL 语言扩展

可以通过 GPU.wgslLanguageFeatures 属性访问 WGSLLanguageFeatures 对象。

注意:并非所有 WGSL 语言扩展在所有支持该 API 的浏览器中都可用于 WebGPU。我们建议您彻底测试您选择使用的任何扩展。

可用特性

可用的 WGSL 语言扩展在不同的实现和物理设备之间可能有所不同,并且也可能随着时间的推移而发生变化;因此,我们没有在此处列出它们。有关完整列表,请参阅 WGSL 规范中的 WGSL 语言扩展

实例属性

以下属性可用于所有只读 类似集合 对象

size 实验性

返回集合中的值的数量。

实例方法

以下方法可用于所有只读 类似集合 对象

has() 实验性

返回一个布尔值,表示集合中是否存在具有给定值的元素。

values() 实验性

返回一个新的迭代器对象,该对象按插入顺序为集合中的每个元素生成

keys() 实验性

values() 的别名。

entries() 实验性

返回一个新的迭代器对象,该对象包含集合中每个元素的[value, value] 数组,按插入顺序排列。

forEach() 实验性

对集合中存在的每个值按插入顺序调用提供的回调函数一次。

示例

js
if (!navigator.gpu) {
  throw Error("WebGPU not supported.");
}

const wgslFeatures = navigator.gpu.wgslLanguageFeatures;

// Return the size of the set
console.log(wgslFeatures.size);

// Iterate through all the set values using values()
const valueIterator = wgslFeatures.values();
for (const value of valueIterator) {
  console.log(value);
}

// ...

规范

规范
WebGPU
# gpuwgsllanguagefeatures

浏览器兼容性

BCD 表格仅在启用 JavaScript 的浏览器中加载。

另请参阅