204 votes

Peut-on appeler la fonction écrite en un JavaScript dans un autre fichier JS ?

Peut-on appeler la fonction écrite dans un fichier JS dans un autre fichier JS ? Quelqu'un peut-il m’aider comment appeler la fonction d’un autre fichier JS ?

227voto

Limo Wan Kenobi Points 1435

La fonction peut être appelée comme si c’était dans le même fichier JS, tant il est lié tout d’abord.

C'est-à-dire

File1.js

File2.js

HTML

L’autre façon ne fonctionnera pas.

HTML

70voto

Stuart Wakefield Points 3364

La réponse ci-dessus a une hypothèse erronée que l'ordre d'inclusion des fichiers en question. Comme le alertNumber fonction n'est pas appelée jusqu'à ce que le alertOne fonction est appelée. Tant que les deux fichiers sont inclus par le temps alertOne est appelé l'ordre des fichiers n'a pas d'importance:

[HTML]

<script type="text/javascript" src="file1.js"></script>
<script type="text/javascript" src="file2.js"></script>
<script type="text/javascript">
    alertOne( );
</script>

[JS]

// File1.js
function alertNumber( n ) {
    alert( n );
};
// File2.js
function alertOne( ) {
    alertNumber( "one" );
};
// Inline
alertOne( ); // No errors

Ou il peut être commandé comme suit:

[HTML]

<script type="text/javascript" src="file2.js"></script>
<script type="text/javascript" src="file1.js"></script>
<script type="text/javascript">
    alertOne( );
</script>

[JS]

// File2.js
function alertOne( ) {
    alertNumber( "one" );
};
// File1.js
function alertNumber( n ) {
    alert( n );
};
// Inline
alertOne( ); // No errors

Mais si vous le faites ceci:

[HTML]

<script type="text/javascript" src="file2.js"></script>
<script type="text/javascript">
    alertOne( );
</script>
<script type="text/javascript" src="file1.js"></script>

[JS]

// File2.js
function alertOne( ) {
    alertNumber( "one" );
};
// Inline
alertOne( ); // Error: alertNumber is not defined
// File1.js
function alertNumber( n ) {
    alert( n );
};

Il importe seulement sur les variables et les fonctions disponibles au moment de l'exécution. Lorsqu'une fonction est définie, il n'exécute pas ou résoudre toute variable déclarée à l'intérieur jusqu'à ce que la fonction est ensuite appelée.

L'Inclusion de différents fichiers de script n'est pas différent du script en cours, dans l'ordre, dans le même fichier, à l'exception de différé de scripts:

<script type="text/javascript" src="myscript.js" defer="defer"></script>

ensuite, vous devez être prudent.

15voto

jball Points 14152

Tant que les deux sont référencés par le web page, oui.

Appelez simplement les fonctions comme s’ils étaient dans le même fichier JS.

7voto

JapanPro Points 6278

Si tous les fichiers sont inclus , vous pouvez appeler les propriétés d' un fichier à un autre (comme la fonction, variable, objet, etc.)

Le js de variables et de fonctions que vous écrivez dans un .fichier js - dire une.js seront disponibles pour les autres fichiers js - dire b.js comme long comme un.js et b.js sont inclus dans le fichier suivant le mécanisme inclus(et dans le même ordre que si la fonction b.js appelle l'un dans une.js).

<script language="javascript" src="a.js"> and 
<script language="javascript" src="b.js">

3voto

anishMarokey Points 6895

Si, tu peux. vous devez faire référence à deux à la page

JScript1.js

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X