Maison > interface Web > js tutoriel > Que se passera-t-il si une méthode du même nom apparaît en JavaScript ?

Que se passera-t-il si une méthode du même nom apparaît en JavaScript ?

醉折花枝作酒筹
Libérer: 2023-01-07 11:44:41
original
2649 Les gens l'ont consulté

Si deux méthodes JS portant le même nom et les mêmes paramètres sont dans le même segment de code, la dernière méthode chargée écrasera la précédente. Au contraire, si la méthode correspondante se trouve dans le segment de code actuel, elle le sera. être appelé immédiatement.

Que se passera-t-il si une méthode du même nom apparaît en JavaScript ?

L'environnement d'exploitation de ce tutoriel : système Windows 7, JavaScript version 1.8.5, ordinateur Dell G3.

En JS, s'il existe une méthode avec le même nom et les mêmes paramètres, laquelle appellera-t-elle en premier ? Regardons d'abord deux exemples :

Exemple 1 :

<html>
<head>
    <title></title>
    <script type="text/javascript">
        function btnTest() {
            $f1();
            $f2();
        }

        function A() {
            alert(1);
        }
        var $f1 = A;
    </script>
    <script type="text/javascript">
        function A() {
            alert(2);
        }
        var $f2 = A;
    </script>
</head>

<body>
    <form>
        <div>
            <input type="button" name="Testing" οnclick="btnTest();" value="TEST" />
        </div>
    </form>
</body>
</html>
Copier après la connexion

Le résultat apparaîtra : 1 2

Exemple 2 :

<html>
<head>
    <title></title>
    <script type="text/javascript">
        function btnTest() {
            $f1();
            $f2();
        }

        function A() {
            alert(1);
        }
        var $f1 = A;
    
        function A() {
            alert(2);
        }
        var $f2 = A;
    </script>
</head>

<body>
    <form>
        <div>
            <input type="button" name="Testing" onclick="btnTest();" value="TEST" />
        </div>
    </form>
</body>
</html>
Copier après la connexion

Le résultat apparaîtra : 2 2

Cela a beaucoup à voir avec le segment de code actuel. Si dans le même segment de code de deux méthodes JS avec le même nom et les mêmes paramètres, la dernière méthode chargée écrasera la précédente. Au contraire, si la méthode correspondante peut être trouvée dans le segment de code actuel, elle. sera appelé immédiatement.

En JS, s'il existe des méthodes avec le même nom et des paramètres différents, laquelle appellera-t-elle en premier ? Regardons deux autres exemples :

Exemple 1 :

<html>
<head>
    <title></title>
    <script type="text/javascript">
        function btnTest() {
            var val = document.getElementById("txtVal").value;
            if (val > 10) {
                A();
            }
            else {
                A(val);
            }
        }

        function A() {
            alert(1);
        }

        function A(val) {
            alert(2);
            alert(val);
        }
        
    </script>
</head>

<body>
    <form>
        <div>
            Input Value(INT):<input type="text" id="txtVal"/><br>
            <input type="button" name="Testing" onclick="btnTest();" value="TEST" />
        </div>
    </form>
</body>
</html>
Copier après la connexion

Exemple 2 :

<html>
<head>
    <title></title>
    <script type="text/javascript">
        function btnTest() {
            var val = document.getElementById("txtVal").value;
            if (val > 10) {
                A();
            }
            else {
                A(val);
            }
        }

        function A() {
            alert(1);
        }
    </script>
    <script type="text/javascript">
        function A(val) {
            alert(2);
            alert(val);
        }
    </script>
</head>

<body>
    <form>
        <div>
            Input Value(INT):<input type="text" id="txtVal"/><br>
            <input type="button" name="Testing" onclick="btnTest();" value="TEST" />
        </div>
    </form>
</body>
</html>
Copier après la connexion

Résultats des tests : les méthodes portant le même nom et des paramètres différents utiliseront la dernière méthode chargée pour écraser la précédente !

【Apprentissage recommandé : Tutoriel avancé javascript

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal