que attribute javascript safari with-statement deprecation-warning

javascript - attribute - SyntaxError: las declaraciones ''with'' no son válidas en modo estricto



title html attribute (2)

La sentencia with(obj) {} está en desuso, y como tal, no es válida en modo estricto.

Para resolver esto, deshabilite el modo estricto o deje de usar las declaraciones.

Recibo este error en la consola de safari cuando intento hacer algo desde un punto de interrupción. Informe de error aquí: https://bugs.webkit.org/show_bug.cgi?id=83267

¿Alguien tiene una solución? Por razones que supongo que están relacionadas con este javascript, he dejado de ejecutarse en mi sitio en safari.

Editar: el informe de error también contiene pasos de repro.

otra edición: no estoy usando una declaración "con". Este es un error de la consola de safari.


Modo estricto en ECMAScript 5 prohibiciones por ejemplo. with declaración. Tienes dos opciones:

  • deshabilite el modo estricto (elimine "strict mode"; línea del archivo / función), o
  • (preferido) evite el uso with declaraciones: son dañinas y totalmente ilegibles.

Más sobre el modo estricto de John Resig: Modo estricto ECMAScript 5, JSON y más .

Puedes leer en el artículo, que modo estricto:

  • hace que no puedas delete variable (como en delete foo; ),
  • limita el uso de eval ,
  • agrega algunas limitaciones a las funciones (p. ej., acceso a la caller y al que callee ),
  • elimina with declaraciones,