Deno.inspect
Converts the input into a string that has the same format as printed by
console.log()
.
const obj = {
a: 10,
b: "hello",
};
const objAsString = Deno.inspect(obj); // { a: 10, b: "hello" }
console.log(obj); // prints same value as objAsString, e.g. { a: 10, b: "hello" }
You can also register custom inspect functions, via the symbol Symbol.for("Deno.customInspect")
,
on objects, to control and customize the output.
class A {
x = 10;
y = "hello";
[Symbol.for("Deno.customInspect")](): string {
return "x=" + this.x + ", y=" + this.y;
}
}
const inStringFormat = Deno.inspect(new A()); // "x=10, y=hello"
console.log(inStringFormat); // prints "x=10, y=hello"
Finally, you can also specify the depth to which it will format.
Deno.inspect({a: {b: {c: {d: 'hello'}}}}, {depth: 2}); // { a: { b: [Object] } }