Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

OscillatorNode: Eigenschaft type

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since ⁨Juli 2015⁩.

Die type-Eigenschaft des OscillatorNode-Interfaces gibt an, welche Form der Wellenform der Oszillator ausgibt. Es gibt mehrere gebräuchliche Wellenformen sowie eine Option, eine benutzerdefinierte Wellenform festzulegen. Die Form der Wellenform beeinflusst den erzeugten Ton.

Wert

Ein String, der die Form der Oszillatorwelle angibt. Die verschiedenen verfügbaren Werte sind:

sine

Eine Sinuswelle. Dies ist der Standardwert.

square

Eine Rechteckwelle mit einem Duty Cycle von 0,5; das heißt, das Signal ist für die Hälfte jeder Periode "hoch".

sawtooth

Eine Sägezahnwelle.

triangle

Eine Dreieckwelle.

custom

Eine benutzerdefinierte Wellenform. Sie setzen type niemals manuell auf custom; verwenden Sie stattdessen die Methode setPeriodicWave(), um die Daten bereitzustellen, die die Wellenform darstellen. Dadurch wird type automatisch auf custom gesetzt.

Siehe auch verschiedene Oszillator-Node-Typen für eine Visualisierung der verschiedenen Wellenformgestalten.

Ausnahmen

InvalidStateError DOMException

Wird ausgelöst, wenn der Wert custom angegeben wurde. Um eine benutzerdefinierte Wellenform festzulegen, rufen Sie einfach setPeriodicWave() auf. Dadurch wird der Typ automatisch für Sie gesetzt.

Beispiele

Das folgende Beispiel zeigt die grundlegende Verwendung eines AudioContext, um einen Oszillator-Node zu erstellen. Für ein angewandtes Beispiel schauen Sie sich unser Violent Theremin Demo an (siehe app.js für den relevanten Code).

js
// create web audio api context
const audioCtx = new AudioContext();

// create Oscillator node
const oscillator = audioCtx.createOscillator();

oscillator.type = "square";
oscillator.frequency.setValueAtTime(440, audioCtx.currentTime); // value in hertz
oscillator.start();

Spezifikationen

Specification
Web Audio API
# dom-oscillatornode-type

Browser-Kompatibilität

Siehe auch