AudioNode:disconnect() 方法

基线 广泛可用

此功能已得到很好的建立,并且可以在许多设备和浏览器版本中使用。它自以下时间起在浏览器中可用 2021 年 4 月.

disconnect() 方法是 AudioNode 接口的一部分,它允许您断开一个或多个节点与调用该方法的节点的连接。

语法

js
disconnect()

参数

disconnect() 方法有几个版本,它们接受不同的参数组合来控制要断开的节点。如果未提供任何参数,则所有传出连接都将断开。

destination 可选

一个 AudioNodeAudioParam,指定要断开的节点。如果此值为 AudioNode,则会断开单个节点,其他可选参数(output 和/或 input)进一步限制了应断开的输入和/或输出。如果此值为 AudioParam,则会终止与该 AudioParam 的连接,并且节点对该计算参数的贡献在更改生效后将变为 0。

output 可选

一个索引,描述要断开的当前 AudioNode 的哪个输出。索引号根据输出通道数定义(请参阅 音频通道)。

input 可选

一个索引,描述要断开的指定目标 AudioNode 的哪个输入。索引号根据输入通道数定义(请参阅 音频通道)。

返回值

无 (undefined)。

异常

IndexSizeError DOMException

如果作为 inputoutput 指定的值无效,则抛出此异常,指的是不存在的节点或超出允许范围的节点。

InvalidAccessError DOMException

如果在调用 disconnect() 的节点未连接到指定的 destination 节点,则抛出此异常。

示例

js
const audioCtx = new AudioContext();

const oscillator = audioCtx.createOscillator();
const gainNode = audioCtx.createGain();

oscillator.connect(gainNode);
gainNode.connect(audioCtx.destination);

gainNode.disconnect();

规范

规范
Web Audio API
# dom-audionode-disconnect

浏览器兼容性

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

另请参阅