Your Web News in One Place

Help Webnuz

Referal links:

Sign up for GreenGeeks web hosting
April 12, 2022 08:57 am GMT

Console live logging mishaps and pitfalls and how to avoid them

According to MDN, there is one line in documenting console.log that sends a chill down your spine, and I could not find proper documentation for it.

Otherwise, many browsers provide a live view that constantly updates as values change.

So I wrote a simple test to see how that may happen.

var x = {name: "foo"};console.log(x);x.name = "bar";console.log(x);x = {name: "oops"};console.log(x);

This will produce normal objects like this
Console log output

But expand the objects:
Console log output

Notice how the first object name is no longer "foo", but rather "bar". The same happens when you are using console.dir and console.log({x}). The last log is because we reset the reference with a new object, which is not practical.

So to avoid that, you have two options. Either log out exact properties x.name, or as MDN suggests, clone the object before you log:

var x = {name: "foo"};console.log(JSON.parse(JSON.stringify(x)));x.name = "bar";console.log(x);

The output is

Console log output


Original Link: https://dev.to/ayyash/console-live-logging-mishaps-and-pitfalls-and-how-to-avoid-them-5f27

Share this article:    Share on Facebook
View Full Article

Dev To

An online community for sharing and discovering great ideas, having debates, and making friends

More About this Source Visit Dev To