rich22 rich22 - 1 year ago 54
HTML Question

document.getElementbyId vs. shorthand (Id.someMethod)

Is there any advantage to writing out

when you can just use the shorthand
? I'm interested because I see some code online in my tutorials declaring variable
equals to
, and then them using that variable, instead of just using the shorthand:


var timeDisplay = document.getElementById("time");
timeDisplay.innerHTML = message;


time.innerHTML = message;

Answer Source

Expanding on my comment, you should never use the "shorthand" because it is dangerous and confusing.

It is dangerous because someone else can defined the window.time property before your code gets executed, and now your entire code breaks:

// some one put this in the global scope
var time = new Date();

// your code
time.innerHTML = message; // nope!

It isn't even about subjective choices. It's that you should almost never do time.something.

Bonus example on why it is confusing:

<div id="history"></div>

history.textContent = "Will it work?";

Guess what will happen?