Javascript.html:10 Uncaught TypeError: Cannot set properties of null (setting 'innerHTML')

While working with the getElementById I encountered this null error in innerHTML

This is my code -----------


Line 8, the spelling of ‘output’ is incorrect.


<p id ="output"> Default Text </p>

The error has mentioned ‘null’ because it thinks there is no ID with the string ‘output’ present in the program. And therefore returned as either undefined while printing, or null while handling the error.

Oh my. That was quite silly of me, my bad! Thanks a lot though

In JavaScript almost everything is an object, null and undefined are exception. if a variable has been declared, but has not been assigned a value, is automatically assigned the value undefined . Therefore, if you try to access the value of such variable, it will throw Uncaught TypeError cannot set property ‘0’ of undefined/null .

JavaScript null and undefined is one of the main reasons to produce a runtime errors . This happens because you don’t check the value of unknown return variables before using it. If you are not sure a variable that will always have some value, the best practice is to check the value of variables for null or undefined before using them. The standard way to catch null and undefined simultaneously is this:

if (variable == null) {
// your code here.

Because null == undefined is true, the above code will catch both null and undefined.

Also you can write equivalent to more explicit but less concise:

if (variable === undefined variable === null) {
// your code here.

This should work for any variable that is either undeclared or declared and explicitly set to null or undefined.