The console.assert() method writes an error message to the console if the assertion is false. If the assertion is true, nothing happens.

Note: This feature is available in Web Workers


assert(assertion, obj1)
assert(assertion, obj1, obj2)
assert(assertion, obj1, obj2, /* … ,*/ objN)

assert(assertion, msg)
assert(assertion, msg, subst1)
assert(assertion, msg, subst1, /* … ,*/ substN)



Any boolean expression. If the assertion is false, the message is written to the console.


A list of JavaScript objects to output. The string representations of each of these objects are appended together in the order listed and output.


A JavaScript string containing zero or more substitution strings.


JavaScript objects with which to replace substitution strings within msg. This parameter gives you additional control over the format of the output.

Return value

None (undefined).


The following code example demonstrates the use of a JavaScript object following the assertion:

const errorMsg = "the # is not even";
for (let number = 2; number <= 5; number++) {
  console.log(`the # is ${number}`);
  console.assert(number % 2 === 0, "%o", { number, errorMsg });
// output:
// 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"}

See Using string substitutions in the documentation of console for further details.


Console Standard
# assert

Browser compatibility

BCD tables only load in the browser