Esta excepción de JavaScript es de solo lectura, funciona en modo estricto y ocurre si una variable global o una propiedad de objeto que se ha asignado a un valor es una propiedad de solo lectura.
Mensaje:
TypeError: Assignment to read-only properties is not allowed in strict mode (Edge) TypeError: "x" is read-only (Firefox) TypeError: 0 is read-only (Firefox) TypeError: Cannot assign to read only property 'x' of #<Object> (Chrome) TypeError: Cannot assign to read only property '0' of [object Array] (Chrome)
Tipo de error:
TypeError
Causa del error: la variable global o la propiedad del objeto que tiene un valor asignado es una propiedad de solo lectura. No puede escribir datos en esas variables.
Ejemplo 1: En este ejemplo, no se puede modificar ninguna propiedad de GFG_Obj.
HTML
<script> 'use strict'; var GFG_Obj = Object.freeze({prop1: 'val1', prop2: 'val2'}); GFG_Obj.prop2 = 0; // TypeError </script>
Salida (en consola):
TypeError: Assignment to read-only properties is not allowed in strict mode
Ejemplo 2: en este ejemplo, el valor de Math.PI no se puede cambiar (que es de solo lectura).
HTML
<script> 'use strict'; Math.PI = 5; </script>
Salida (en consola):
TypeError: Assignment to read-only properties is not allowed in strict mode
Publicación traducida automáticamente
Artículo escrito por PranchalKatiyar y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA