Wrapper for the console object for the JavaScript backend.
CSS-styled messages in the browser are useful for debugging purposes. To use them, prefix the message with one or more %c, and provide the CSS style as the last argument. The amount of %c's must match the amount of CSS-styled strings.
Example: cmd: -r:off
import std/jsconsole console.log "%c My Debug Message", "color: red" # Notice the "%c" console.log "%c My Debug %c Message", "color: red", "font-size: 2em"
proc clear(console: Console) {.importcpp, varargs, ...raises: [], tags: [],
forbids: [].}proc count(console: Console; label = "".cstring) {.importcpp, ...raises: [],
tags: [], forbids: [].}proc countReset(console: Console; label = "".cstring) {.importcpp, ...raises: [],
tags: [], forbids: [].}proc debug(console: Console) {.importcpp, varargs, ...raises: [], tags: [],
forbids: [].}func dir(console: Console; obj: auto) {.importcpp, ...raises: [], tags: [],
forbids: [].}func dirxml(console: Console; obj: auto) {.importcpp, ...raises: [], tags: [],
forbids: [].}proc error(console: Console) {.importcpp, varargs, ...raises: [], tags: [],
forbids: [].}proc group(console: Console; label = "".cstring) {.importcpp, ...raises: [],
tags: [], forbids: [].}proc groupCollapsed(console: Console; label = "".cstring) {.importcpp,
...raises: [], tags: [], forbids: [].}proc groupEnd(console: Console) {.importcpp, ...raises: [], tags: [], forbids: [].}proc info(console: Console) {.importcpp, varargs, ...raises: [], tags: [],
forbids: [].}proc log(console: Console) {.importcpp, varargs, ...raises: [], tags: [],
forbids: [].}proc table(console: Console) {.importcpp, varargs, ...raises: [], tags: [],
forbids: [].}proc time(console: Console; label = "".cstring) {.importcpp, ...raises: [],
tags: [], forbids: [].}proc timeEnd(console: Console; label = "".cstring) {.importcpp, ...raises: [],
tags: [], forbids: [].}proc timeLog(console: Console; label = "".cstring) {.importcpp, ...raises: [],
tags: [], forbids: [].}func timeStamp(console: Console; label: cstring) {.importcpp, ...raises: [],
tags: [], forbids: [].}https://developer.mozilla.org/en-US/docs/Web/API/Console/timeStamp
..warning:: non-standard
Source Editproc trace(console: Console) {.importcpp, varargs, ...raises: [], tags: [],
forbids: [].}proc warn(console: Console) {.importcpp, varargs, ...raises: [], tags: [],
forbids: [].}template jsAssert(console: Console; assertion)
console.assert, for NodeJS this prints to stderr, assert failure just prints to console and do not quit the program, this is not meant to be better or even equal than normal assertions, is just for when you need faster performance and assertions, otherwise use the normal assertions for better user experience. https://developer.mozilla.org/en-US/docs/Web/API/Console/assert Example:
console.jsAssert(42 == 42) # OK
console.jsAssert(42 != 42) # Fail, prints "Assertion failed" and continues
console.jsAssert('`' == '\n' and '\t' == '\0') # Message correctly formatted
assert 42 == 42 # Normal assertions keep working Source Edit
© 2006–2024 Andreas Rumpf
Licensed under the MIT License.
https://nim-lang.org/docs/jsconsole.html