Console.assert()

Schreibt eine Fehlermeldung in die Konsole, wenn eine Behauptung falsch ist. Wenn die Behauptung wahr ist, passiert nichts.

Hinweis:

Dieses Feature ist in Web Workers verfĂŒgbar.

Die Methode console.assert() wurde in Ă€lteren Node.js Versionen anders implementiert als in Browsern. In Browsern wird durch den Aufruf von console.assert() mit einer falschen Behauptung message in die Konsole ausgegeben, ohne die AusfĂŒhrung des nachfolgenden Codes zu unterbrechen. Vor Node.js v10.0.0 bewirkt eine falsche Behauptung jedoch auch, dass ein AssertionError ausgelöst wird. Diese Diskrepanz wurde mit Node v10 behoben, so dass console.assert() jetzt sowohl in Node als auch im Browser gleich funktioniert.

Syntax

console.assert(assertion, obj1 [, obj2, ..., objN]);
console.assert(assertion, msg [, subst1, ..., substN]); // c-Ă€hnliche Formatierung

Parameter

assertion
Jeder boolesche Ausdruck. Wenn die Behauptung falsch ist, wird message in der Console ausgegeben.
obj1 ... objN
Eine Liste der auszugebenden JavaScript-Objekte. Die String-Darstellungen jedes dieser Objekte werden in der angegebenen Reihenfolge zusammengefĂŒgt und ausgegeben.
msg
Ein JavaScript-String, der keine oder mehrere Ersetzungsstrings enthÀlt.
subst1 ... substN
JavaScript-Objekte, mit denen Ersetzungsstrings in msg ersetzt werden sollen. Dieser Parameter gibt Ihnen zusĂ€tzliche Kontrolle ĂŒber das Format der Ausgabe.

Beispiele

Im folgenden Codebeispiel wird die Verwendung eines JavaScript-Objekts nach der Behauptung veranschaulicht:

const errorMsg = 'the # is not even';
for (let number = 2; number <= 5; number += 1) {
    console.log('the # is ' + number);
    console.assert(number % 2 === 0, {number: number, errorMsg: errorMsg});
    // oder mit ES2015 Object Property Shorthand:
    // console.assert(number % 2 === 0, {number, errorMsg});
}
// Ausgabe:
// the # is 2
// the # is 3
// Assertion failed: {number: 3, errorMsg: "the # is not even"}
// the # is 4
// the # is 5
// Assertion failed: {number: 5, errorMsg: "the # is not even"}

Beachten Sie, dass ein String, der einen Ersatzstring enthĂ€lt, als Parameter fĂŒr console.log() in Node und vielen, wenn nicht allen Browsern, funktioniert...

console.log('the word is %s', 'foo');
// Ausgabe: the word is foo

...die Verwendung eines solchen Strings als Parameter fĂŒr console.assert() jedoch derzeit nicht in allen Browsern wie erwartet funktioniert:

console.assert(false, 'the word is %s', 'foo');
// korrekte Ausgabe in Node (e.g. v8.10.0) und einigen Browsern
//     (z. B. Firefox v60.0.2):
// Assertion failed: the word is foo
// inkorrekte Ausgabe in einigen Browsern
//     (z. B. Chrome v67.0.3396.87):
// Assertion failed: the word is %s foo

Weitere Informationen finden Sie in der Dokumentation von console unter Text in der Konsole ausgeben.

Spezifikationen

Spezifikation Status Kommentar
Console API
Die Definition von 'console.assert()' in dieser Spezifikation.
Lebender Standard Initiale Definition

BrowserkompatibilitÀt

BCD tables only load in the browser

Siehe auch