HomeLanguagesJavascriptJavaScript TypeError – Can’t assign to property “X” on “Y”: not an...

JavaScript TypeError – Can’t assign to property “X” on “Y”: not an object

This JavaScript exception can’t assign to property occurs in strict-mode only and this error occurs If the user tries to create a property on any of the primitive values like a symbol, a string, a number, or a boolean. Primitive values cannot be used to hold any property.

Message:

TypeError: can't assign to property "x" on {y}: not an 
           object (Firefox)
TypeError: Cannot create property 'x' on {y} (Chrome)

Error Type:

TypeError

Cause of Error: In strict-mode, a primitive value in the code is used to create a property on it. Primitive values can not hold properties.

Example 1: In this example, the string is used to create properties on it, So the error has occurred.

Javascript




'use strict';
let GFG = "This is neveropen";
GFG.prop = {}; // error here


Output(in console):

TypeError: Cannot create property 'prop' on string 
'This is neveropen'

Example 2: In this example, the boolean ‘true’ is used to create properties on it, So the error has occurred.

Javascript




'use strict';
let variableName = true;
variableName.prop = {}; // error here


Output(in console):

TypeError: Cannot create property 'prop' on boolean 'true'
RELATED ARTICLES

Most Popular

Dominic
32539 POSTS0 COMMENTS
Milvus
131 POSTS0 COMMENTS
Nango Kala
6920 POSTS0 COMMENTS
Nicole Veronica
12033 POSTS0 COMMENTS
Nokonwaba Nkukhwana
12143 POSTS0 COMMENTS
Shaida Kate Naidoo
7055 POSTS0 COMMENTS
Ted Musemwa
7290 POSTS0 COMMENTS
Thapelo Manthata
7010 POSTS0 COMMENTS
Umr Jansen
6998 POSTS0 COMMENTS