Debugging Techniques

Web Developer Toolbar

For today’s post, I wanted to cover a few more debugging techniques that I have found helpful.

Alerts

I utilize alerts throughout my code for one-off, rudimentary variable watching. I do not use it for a ton of repeated watches, because that would be just plain annoying. But it is a quick and easy way to see the value of a variable.

[code lang=”js”]
var myVar = "Some Value";
alert(myVar);
[/code]

Comments

Anyone who knows me, knows I am big on comments. It has saved me countless hours where my memory has failed me. Another way I use comments is to prevent code from processing. Say I have a section of code that is causing problems. I may either not deal with it currently as it may be a side feature, or I may want to reveal the functionality line by line as I am debugging. Comments are an easy way to do this.

[code lang=”js”]
// Single line comment
/* Multi-line comment */
[/code]

Console

I use this a ton. Utilizing a console log call, I can output data to the console. Additionally, I use it as a scratch pad by writing JavaScript directly into the console.

[code lang=”js”]
console.log(myVar);
[/code]

Web Developer Toolbar

This is an add in to FireFox. It allows you to look at cookies, turn css on/off, highlight areas of the page, etc.

Web Developer Toolbar

DOM

Sometimes it is helpful to utilize DOM manipulation techniques to create/edit DOM elements for logging to be able to see things get created on the fly.

Break Points

It is sometimes helpful to use break points to stop your code mid-stream. We can do this within the inspector. Having the ability to pause it at any moment is helpful to examine the state of your project at a given point. On a side note, putting in watch statements along with breakpoints is a useful technique.

Sources Tab

JSHint

A hinter/linter tool, such as JSHint, is a great way to ensure your code is structured well. This will catch unused variables, missing semi-colons, etc. It will not ensure your code works…just that it is structured correctly and elegant.

 

So, those are just a high-level, fly-by of some of the techniques/tools I have used to debug my projects. I hope they are helpful for you.

 

Happy Coding!

Clay Hess

More To Explore

Crisis. Concept of reducing costs. Bag with dollars money in vise.
Code

Compression Streams API: Native gzip/deflate for the web

The Compression Streams API brings native, streaming gzip and deflate to the web platform. With built‑in CompressionStream and DecompressionStream, you can compress or decompress data on the fly—no third‑party libraries required. It integrates cleanly with Fetch/Response to turn streams into ArrayBuffer, Blob, Uint8Array, String, or JSON, works in Web Workers, and is part of the 2023 Baseline. Use it to shrink uploads, store compressed data offline, and streamline real‑time pipelines while keeping bundles lean.

copy and paste concept
Code

Quick Tour of the Clipboard API

The Clipboard API brings modern, asynchronous copy, cut, and paste to web apps. Access Navigator.clipboard in secure contexts, handle copy/cut/paste events, and manage permissions and user activation. Note that Chromium, Firefox, and Safari differ on permissions and transient activation, so test across browsers.

Share This Post

small_c_popup.png

Need help?

Let's have a chat...


Login

Jump Back In!

Here at Webolution Designs, we love to learn. This includes sharing things we have learned with you. 

Register

Begin Your Learning Journey Today!

Come back inside to continue your learning journey.