Est-il possible d'utiliser une variable dans un fichier appelé first.js
dans un autre fichier appelé second.js
?
first.js
contient une variable appelée colorcodes
.
javascript
scope
SAK
la source
la source
<script src="http://datasource.example.net/first.js"></script><script src="second.js"></script>
Réponses:
Comme l'a dit Fermin, une variable dans la portée globale devrait être accessible à tous les scripts chargés après sa déclaration. Vous pouvez également utiliser une propriété de
window
ou (dans la portée globale)this
pour obtenir le même effet.... dans un autre fichier ...
... dans votre fichier html ...
la source
window
est la portée globale - donc window.colorCodes et l'objet (global) colorCodes est le même objet.<script>var variable1 = true;</script> <script src="first.js"></script>
est-ce que first.js verra cette variable? Je l'ai testé dans l'extension Google Chrome et cela n'a pas fonctionné/* global colorCodes */
sur la ligne ci-dessus pour éviter le message d'erreur "... n'est pas défini"Vous pouvez exporter la variable du premier fichier à l'aide de l' exportation .
Ensuite, importez la variable dans le deuxième fichier à l'aide de l' importation .
export - MDN
la source
J'ai aimé ce que la réponse ci-dessus a dit mais même si cela n'a pas fonctionné avec moi
parce que j'étais
declaring
ces variablesinside
JQuery$( document ).ready()
la source
Cela devrait fonctionner - définissez une variable globale dans firstfile et accédez-y à partir de secondfile:
firstfile.js:
secondfile.js:
Notez que l'ordre dans lequel vous chargez les fichiers de script est important pour certains navigateurs (IE6 bien sûr, peut-être pour d'autres)
la source
En utilisant Node.js, vous pouvez exporter la variable via le module.
Ensuite, importez le module / la variable dans le deuxième fichier à l'aide de require.
Vous pouvez utiliser le
import
et uneexport
approche depuis ES6 en utilisant Webpack / Babel, mais dans Node.js vous devez activer un indicateur et utiliser l'extension .mjs.la source
Je suis tombé sur amplify.js . C'est vraiment simple à utiliser. Pour stocker une valeur, appelons-la "myValue", vous faites:
Et pour y accéder, vous faites
la source
Si vous stockez vos codes de couleur dans une variable globale, vous devriez pouvoir y accéder depuis l'un ou l'autre des fichiers javascript.
la source
Je fais peut-être cela un peu différemment. Je ne sais pas pourquoi j'utilise cette syntaxe, je l'ai copiée à partir d'un livre il y a longtemps. Mais chacun de mes fichiers js définit une variable. Le premier fichier, sans aucune raison, s'appelle R:
Et puis si j'ai un gros morceau de code que je veux séparer, je le mets dans un fichier séparé et un nom de variable différent, mais je peux toujours référencer les variables et les fonctions R. J'ai appelé le nouveau TD sans aucune raison valable:
Vous pouvez voir que là où, dans la «sepfunction» TD, j'appelle la fonction R.somefunction. Je me rends compte que cela ne donne aucune efficacité d'exécution car les deux scripts doivent être chargés, mais cela m'aide à garder mon code organisé.
la source
la source