Esta propiedad de excepción de JavaScript no se puede configurar y no se puede eliminar si el usuario intenta eliminar una propiedad y la propiedad no se puede configurar.
Mensaje:
TypeError: Calling delete on 'x' is not allowed in strict mode (Edge) TypeError: property "x" is non-configurable and can't be deleted. (Firefox) TypeError: Cannot delete property 'x' of #<Object> (Chrome)
Tipo de error:
TypeError
Causa del error: hay un intento de eliminar una propiedad que no es configurable.
Ejemplo 1: en este ejemplo, la eliminación se usa para eliminar una propiedad no configurable, por lo que se ha producido el error.
HTML
<script> 'use strict'; var GFG_Obj = Object.freeze({prop1: 'val1', prop2: 123}); delete GFG_Obj.prop2; // Error here </script>
Salida (en consola):
TypeError: Calling delete on 'prop2' is not allowed in strict mode
Ejemplo 2: en este ejemplo, la eliminación se usa para eliminar PI , que es una propiedad no configurable, por lo que se ha producido el error.
HTML
<script> 'use strict'; delete Math.PI; // Error here </script>
Salida (en consola):
TypeError: Calling delete on 'PI' 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