Si tengo dos o más archivos JavaScript en mi página web, ¿se aplicarán las variables para un archivo JavaScript a todos los archivos JavaScript?

Esto depende completamente de cómo y dónde defina x, pero creo que quiere decir declararlo en el ámbito global. La respuesta es sí, se puede hacer referencia a x desde el código en js2.js

Piénsalo de esta manera. Cuando agrega un elemento en una página, el navegador ejecuta el código dentro de esa etiqueta y todas las variables que declara se agregan al objeto especial “ventana”. El objeto de ventana es un objeto global y, como tal, se puede hacer referencia a él desde cada código de esa página. Es por eso y cómo x estará allí cuando intentes usarlo en el segundo archivo JS.

En este punto, debo advertirle que es una idea extremadamente mala. Puede ser una buena solución para un problema específico que tiene, pero a la larga le causará muchos dolores de cabeza. Su código será extremadamente frágil (¿qué sucede si cambia el orden de las etiquetas ?) Y será una pesadilla mantenerlo, especialmente después de que su código haya alcanzado un par de cientos de líneas.

En mi experiencia, el código tiene un impulso propio y aumenta a medida que escribes más código para un proyecto. El truco es hacer que ese impulso funcione para usted en lugar de CONTRA usted.

Depende. En JavaScript, las variables tienen un alcance dentro de las funciones, la única excepción son las variables declaradas fuera de las funciones a nivel global (alcance de JavaScript). Si desea compartir variables entre archivos, puede declarar variables globales declarando var x = 2; fuera de cualquier bloque de funciones, y luego puede hacer referencia a x desde cualquier archivo.

Sin embargo, debe tener cuidado al declarar variables globales, ya que esas variables pueden sobrescribirse o referenciarse inadvertidamente por otras partes de su código JavaScript, y deben evitarse cuando sea posible.

Sí, x estará disponible para el segundo archivo también si es variable global. Pero aquí debe tener cuidado de que js / js1.js se cargue antes de que se cargue js / js2.js. Si sucedió viceversa, x se izará y declarará como variable global en el segundo archivo.

Sí, funcionará si lo declaras (‘x’) como una variable global (fuera de cualquier función). Cualquier variable que haya declarado como global, puede acceder a ellas en cualquiera de los archivos.

More Interesting

Estoy planeando lanzar un sitio web que contenga contenido que me gustaría no ser copiado y utilizado por otros para uso comercial. ¿Qué pasos hay que tomar?

Si prefiero las bibliotecas sobre los marcos y la simplicidad sobre la complejidad, ¿debería usar Foundation, Bootstrap u otra cosa como punto de partida?

Estoy creando una aplicación en Haskell que implica un poco de raspado web. ¿Debo construir la parte de raspado web en Haskell o en Python?

¿Cómo usar Python para el desarrollo web? ¿Cuáles son las herramientas y las metodologías utilizadas?

Tengo una base de datos de hotel en documentos de Excel. ¿Cómo comienzo a construir un sistema de recomendación para hoteles?

Estoy interesado en JavaScript del lado del servidor, pero tengo más experiencia en PHP. ¿Vale la pena invertir tiempo para convertirse en un experto en PHP?

He sido desarrollador web front-end durante aproximadamente 2 años, ¿cuáles son los mejores pasos que puedo seguir para convertirme en un ingeniero confiable, competente y senior?

¿Estoy siendo flojo para aprender desarrollo web, o simplemente no es para mí?

Tengo conocimiento de HTML CSS y arranque básico debido a un problema financiero. Quiero hacer mi trabajo. ¿Debería hacer un trabajo o esperar para aprender JavaScript primero?

Sé HTML5, CSS3, JavaScript, jQuery lo suficiente como para hacer un trabajo. Sin embargo, no me considero un experto en estas áreas. ¿Cómo puedo mejorar?

Soy un desarrollador de Winform / WPF. ¿Qué debo aprender para convertirme en desarrollador de aplicaciones web en ASP .NET 5 o Meteor?

Cómo crear un virus con PHP

Tengo una idea de inicio, pero estoy debatiendo si comenzar en la web o como una aplicación.

Soy un estudiante de ingeniería mecatrónica, también estoy interesado en el desarrollo web. ¿Es una pérdida de tiempo tomar el desarrollo web como una carrera secundaria?

Tengo una idea de red social para bancos, prestatarios y tiendas en línea. ¿Puede algún desarrollador web experto cofundar esto?