Skip to content
FLAVIO COPES
flaviocopes.com
2026

Fix 'TypeError: Attempted to assign to readonly property'

By Flavio Copes

Learn how to fix the TypeError: Attempted to assign to readonly property in JavaScript, caused by mutating a string you forgot to pass to JSON.parse() first.

~~~

I was doing something in my Next.js codebase when I ran into this problem:

TypeError: Attempted to assign to readonly property

Weird! After a bit of debugging I found the problem. I has nothing to do with Next.js, it can happen in any JavaScript codebase.

I had a column in my database where I stored data as JSON.

In my code I was updating this JSON object, using the dot syntax (like data.name = 'Flavio') but I forgot to call JSON.parse() before doing so.

data was not an object, but a string!

Strings are immutable in JavaScript. We can’t update them once defined. Hence the error. The solution was to, obviously, call JSON.parse() before updating the JSON object.

~~~

Related posts about js: