Hice una pregunta ayer ¿Debería molestarme en desarrollar JavaScript deshabilitado? . Creo que el consencus es: Sí, debería desarrollar JavaScript deshabilitado. Ahora solo quiero entender por qué los usuarios deshabilitan JS. Parece que muchos desarrolladores (supongo que las personas que respondieron las preguntas son desarrolladores) deshabilitan JS. Porqué es eso. ¿Por qué los usuarios deshabilitan JS? ¿Por seguridad? ¿Velocidad? ¿o que?
web-development
javascript
Jiew Meng
fuente
fuente
Respuestas:
Uno deshabilita JavaScript en un entorno de navegador debido a las siguientes consideraciones:
Velocidad y ancho de banda
Muchas aplicaciones usan demasiado JavaScript para su propio bien ... ¿Necesita partes de su interfaz para que las llamadas AJAX las actualicen todo el tiempo? Tal vez su interfaz se sienta excelente y rápida cuando se usa con una conexión de banda ancha, pero cuando tiene que reducir a velocidades de conexión más lentas, se prefiere una interfaz más optimizada. Y desactivar JavaScript es una buena manera de evitar que las aplicaciones web boquiabiertas refresquen el mundo cada 15 segundos más o menos sin una buena razón. (¿Alguna vez viste la cantidad de datos que envía Facebook? Da miedo. Sin embargo, no es solo un problema relacionado con JS, sino que es parte de él).
También tendemos a descargar más y más procesamiento al cliente, y si utiliza hardware minimalista (o simplemente obsoleto), es extremadamente lento.
Usabilidad y accesibilidad
No todas las interfaces de usuario deben expresarse de manera dinámica, y el contenido generado por el servidor puede ser perfectamente aceptable en muchos casos. Además, algunas personas simplemente no quieren este tipo de interfaces. No puede complacer a todos, pero a veces tiene la oportunidad y el deber de satisfacer a todos sus usuarios por igual.
Finalmente, algunos usuarios tienen discapacidades, ¡y nunca las ignorarás !
Los peores escenarios aquí, en mi opinión, son sitios web del gobierno que intentan "modernizar" sus interfaces de usuario para que parezcan más amigables al público, pero terminan dejando una gran parte de su público objetivo. Del mismo modo, es una pena que un estudiante universitario no pueda acceder al contenido de su curso: porque es ciego y su lector de pantalla no es compatible con el sitio, o porque el sitio es tan pesado y requiere complementos modernos ad-hoc que él / ella no puede instalar en esa computadora portátil restaurada comprada en e-bay hace 2 años, o de nuevo porque él / ella regresa a su país a otro país para las vacaciones de primavera y las restricciones de ancho de banda local no pueden hacer frente a la carga útil del sitio.
No todos viven en un mundo perfecto.
Soporte de plataforma
Este punto se relaciona con los 2 anteriores y tiende a ser menos relevante hoy en día, ya que los navegadores incorporan motores JavaScript que son un nivel de magnitud más eficientes de lo que solían ser, y esto sigue mejorando.
Sin embargo, no hay garantía de que todos sus usuarios tengan el privilegio de usar navegadores modernos (ya sea por restricciones corporativas, que nos obligan a admitir navegadores antediluvianos sin una buena razón, realmente, u otras razones que pueden o no ser válidas). Según lo mencionado por "Matthieu M." En los comentarios, debe recordar que mucha gente todavía usa hardware de menor calidad y que no todos usan el teléfono inteligente más reciente y moderno. A partir de hoy, todavía hay una porción significativa de personas que usan teléfonos que tienen navegadores integrados con soporte limitado.
Pero, como mencioné, las cosas mejoran en esta área. Pero aún debe recordar los puntos anteriores sobre las limitaciones de ancho de banda si sigue sondeando muy regularmente (o sus usuarios disfrutarán de una buena factura telefónica).
Todo está muy relacionado entre sí.
Seguridad
Si bien, obviamente, podría pensar que no se puede hacer nada particularmente peligroso con JavaScript teniendo en cuenta que se ejecuta en un entorno de navegador, esto es totalmente falso.
Te das cuenta de que cuando visitas P.SE y SO, inicias sesión automáticamente si iniciaste sesión en cualquier otra red, ¿verdad? Hay algunos JS allí. Sin embargo, esa parte sigue siendo inofensiva, pero utiliza algunos conceptos que pueden ser explotados por algunos sitios malévolos. Es completamente posible que un sitio web use JavaScript para recopilar información sobre algunas cosas que hace (o hizo) durante su sesión de navegación (o las anteriores si no borra los datos de su sesión cada vez que sale de su navegador o ejecuta el ahora modos de navegación privados o de incógnito comunes) y luego simplemente cárguelos en un servidor.
Las vulnerabilidades recientes (que trabajaban en los principales navegadores en ese momento) incluían la capacidad de recopilar sus datos de formularios de entrada guardados (probando combinaciones para usted en una página malévola y grabando los textos sugeridos para cada combinación de letras de inicio posible, posiblemente informando a los atacantes quién es usted) , donde trabajas y vives ) o para extraer tu historial de navegación y tus hábitos ( un truco muy inteligente que hace algo tan simple como inyectar enlaces en el DOM de la página para que coincida con el color del enlace y ver si ha sido visitado . Solo tienes que hacerlo esto en una tabla lo suficientemente grande de nombres de dominio conocidos. Y su navegador cada vez más rápido en el procesamiento de JavaScript, este tipo de cosas se hace rápidamente).
Además, no olvidemos que si el modelo de seguridad de su navegador es defectuoso, o los sitios web que visita no se protegen lo suficiente contra ataques XSS, entonces uno podría usar JavaScript para simplemente acceder a sus sesiones abiertas en sitios web remotos.
JavaScript es mayormente inofensivo ... si lo usa para sitios web confiables. Gmail Facebook (tal vez ... y ni siquiera ...). Lector de Google. StackExchange.
Pero sí, claro, JavaScript no puede ser tan malo, ¿verdad? Y de todos modos, hay cosas más aterradoras que temer en línea. Como pensar que eres anónimo cuando realmente no lo eres tanto , como lo demuestra el experimento Panopticlick del EFF . Lo que también se hace en parte usando JavaScript. Incluso puede leer sus razones para deshabilitar JavaScript para evitar las huellas digitales del navegador .
Dicho todo esto, puede haber situaciones perfectamente buenas en las que no necesite preocuparse por admitir JavaScript. Pero si ofrece un sitio web de servicio público, considere aceptar ambos tipos de clientes. Personalmente, creo que muchas aplicaciones web modernas y sitios web funcionarían igual de bien utilizando el antiguo modelo de contenido generado por el servidor sin JavaScript en absoluto en el lado del cliente, y aún sería excelente y posiblemente consumiría mucho menos.
Su kilometraje puede variar según su proyecto.
fuente
Porque confiar en alguien para escribir una tira cómica divertida cada mañana y confiar en que alguien ejecute un código arbitrario de Turing en mi computadora son dos cosas muy diferentes.
fuente
No soy un desarrollador web, y solo tengo una comprensión moderada de cómo funciona Internet. Entonces esta es una respuesta de un usuario .
Mi experiencia me lleva a creer que muchos sitios simplemente están mal codificados, ya sea por pereza o por ignorancia: cuando veía una página web básicamente estática , como una página de Facebook, el uso de mi CPU aumentaría en un 15%, y drásticamente más con múltiples pestañas Eventualmente llegó al punto en que tendría que esperar una respuesta después de hacer clic en un botón o enlace y mi CPU se sobrecalentaría y se bloquearía.
En muchos de estos peores delincuentes (sitios), nada visible está cambiando y no está sucediendo nada interactivo. Solo podría suponer que el código del sitio constantemente realizaba actualizaciones excesivas, encuestas y bucles sin fin.
Esto me llevó a instalar NoScript para liberar el uso de mi CPU y evitar que la navegación se convierta en una tarea frustrante.
El otro complemento maravilloso que uso es FlashBlock .
fuente
Desactivo JS por razones de velocidad. TechCrunch sin JavaScript tarda unos segundos en cargarse con un caché cebado. Con JavaScript tarda casi 20 segundos, más si el caché no está preparado.
Muchos sitios se han hinchado con JavaScript, especialmente galerías de imágenes y sitios de comercio. Eliminar esto le brinda una mejor experiencia de navegación en la mayoría de los casos.
fuente
Para mí todo se trata de seguridad. Utilizo noscript para permitir que ciertos sitios web ejecuten JavaScript, mientras que no se permite la mayoría.
Al final, nunca se sabe dónde está el peligro ( sitio web nobel infectado en techspot.com ). Muchos exploits de día cero (y otros) usan javascipt; cerrar esta avenida de ataque se siente como un paso en la dirección correcta.
fuente
Mi razón principal es que suprime los anuncios más molestos. Prefiero no usar AdBlock Plus, ya que eso puede afectar los ingresos de los sitios que visito (y he usado uno o dos sitios donde los términos del servicio decían que no debía deshabilitar los anuncios). NoScript limita el potencial desagradable de los anuncios, y estoy dispuesto a vivir con el resto de ellos.
También existe la consideración de seguridad, y eso está relacionado en gran medida con los anuncios, ya que cualquier sitio que venda anuncios debe considerarse potencialmente hostil.
Además, no necesariamente sé que un sitio es dudoso antes de visitarlo. Algunas personas disfrutan enviando enlaces a sitios, y no son necesariamente honestos.
fuente
Debido a que los navegadores solían tener implementaciones lentas de JavaScript y demasiados diseñadores web n00b simplemente lo usaban para cosas irrelevantes, como la transferencia de botones.
En una máquina rápida, con un navegador moderno, nadie en su sano juicio lo desactiva todo el tiempo. Lo que no quiere decir que no haya muchas personas muy "conscientes de la seguridad" y otras personas sin los fondos, el deseo o los conocimientos necesarios para ejecutar un navegador moderno en una computadora rápida ... Fue solo recientemente que IE6 dejó de funcionar. ¡El navegador más popular en internet!
fuente
Con Javascript activado, cualquier sitio web puede ejecutar código en mi computadora. Ni siquiera sé si el sitio web en particular ejecuta código y qué hace. Aún peor, alguien más puede insertar código sin mi conocimiento en un sitio web normalmente inofensivo (XSS). Recientemente, una conocida revista informática alemana hizo un artículo, cuando un joven de 16 años probó los sitios de banca en línea de los bancos más comunes en Alemania. Muchos de ellos, incluido el más grande, eran vulnerables a XSS. Y ni siquiera se da cuenta de que su sitio de banca en línea ejecuta un Javascript que cambia, por ejemplo, el objetivo y el monto de una transacción. Con Javascript deshabilitado, el ataque XSS en el contexto de un sitio confiable es inútil, no ejecuto el código malicioso.
fuente