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

View in English Always switch to English

WebAssembly.Exception.prototype.is()

Baseline Weitgehend verfügbar

Diese Funktion ist gut etabliert und funktioniert auf vielen Geräten und in vielen Browserversionen. Sie ist seit Mai 2022 browserübergreifend verfügbar.

Die is()-Methode des Exception-Objekts kann verwendet werden, um zu testen, ob die Exception mit einem gegebenen Tag übereinstimmt.

Die Methode kann verwendet werden, um zu testen, ob ein Tag korrekt ist, bevor es an Exception.prototype.getArg() übergeben wird, um die übergebenen Werte zu erhalten. Sie kann sowohl auf in JavaScript erstellte Tags als auch auf solche, die in WebAssembly-Code erstellt und nach JavaScript exportiert wurden, angewendet werden.

Syntax

js
is(tag)

Parameter

tag

Ein WebAssembly.Tag, der überprüft werden kann, um den Typ der Ausnahme zu verifizieren.

Rückgabewert

Ein boolescher Wert — true, wenn das angegebene Tag mit der Ausnahme übereinstimmt, andernfalls false.

Damit true zurückgegeben wird, reicht es nicht aus, dass das Tag eine identische Sequenz von Datentypen hat — es muss dieselbe Identität haben (dasselbe Tag sein), die zur Erstellung der Ausnahme verwendet wurde.

Beispiele

Der folgende Code zeigt, wie is() verwendet wird, um zu überprüfen, ob ein Tag mit einer Exception übereinstimmt.

js
// Create tag and use it to create an exception
const tag1 = new WebAssembly.Tag({ parameters: ["i32", "f64"] });
const exception1 = new WebAssembly.Exception(tag1, [42, 42.3]);

// Verify that "tag1" matches this exception
console.log(`Tag1: ${exception1.is(tag1)}`);

Dies wird Tag1: true in der Konsole protokollieren.

Wir können auch demonstrieren, dass diese Ausnahme nicht mit einem anderen Tag übereinstimmt, selbst wenn das Tag mit denselben Parametern erstellt wird.

js
// Create a new tag (with same parameters) and verify it does not match the exception
const tag2 = new WebAssembly.Tag({ parameters: ["i32", "f64"] });
console.log(`Tag2: ${exception1.is(tag2)}`);

Dies wird Tag2: false in der Konsole protokollieren.

Für ein vollständiges funktionierendes Beispiel siehe die throw-Instruktionsreferenzseite.

Spezifikationen

Spezifikation
WebAssembly JavaScript Interface: Exception Handling
# dom-exception-is

Browser-Kompatibilität

Siehe auch