AudioNode: disconnect() 方法

Baseline 廣泛可用 *

此特性已相當成熟,可在許多裝置和瀏覽器版本上使用。自 ⁨2015 年 7 月⁩以來,各瀏覽器均已提供此特性。

* 此特性的某些部分可能存在不同級別的支援。

AudioNode 介面的 disconnect() 方法允許你斷開從呼叫該方法的節點發出的一個或多個節點的連線。

語法

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

瀏覽器相容性

另見