Heim  >  Artikel  >  Web-Frontend  >  Was passiert, wenn eine Methode mit demselben Namen in JavaScript erscheint?

Was passiert, wenn eine Methode mit demselben Namen in JavaScript erscheint?

醉折花枝作酒筹
醉折花枝作酒筹Original
2021-07-21 14:39:072598Durchsuche

Wenn sich zwei JS-Methoden mit demselben Namen und denselben Parametern im selben Codesegment befinden, überschreibt die zuletzt geladene Methode die vorherige. Wenn die entsprechende Methode jedoch im aktuellen Codesegment gefunden werden kann, wird dies der Fall sein sofort angerufen werden.

Was passiert, wenn eine Methode mit demselben Namen in JavaScript erscheint?

Die Betriebsumgebung dieses Tutorials: Windows 7-System, JavaScript-Version 1.8.5, Dell G3-Computer.

Wenn es in JS eine Methode mit demselben Namen und denselben Parametern gibt, welche wird dann zuerst aufgerufen? Schauen wir uns zunächst zwei Beispiele an:

Beispiel 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>

Das Ergebnis wird angezeigt: 1 2

Beispiel 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>

Das Ergebnis wird angezeigt: 2 2

Das hat viel damit zu tun Wenn sich im selben Codesegment zwei JS-Methoden mit demselben Namen und denselben Parametern befinden, überschreibt die zuletzt geladene Methode die vorherige. Im Gegenteil, wenn die entsprechende Methode im aktuellen Codesegment gefunden werden kann wird sofort angerufen.

Wenn es in JS Methoden mit demselben Namen und unterschiedlichen Parametern gibt, welche wird dann zuerst aufgerufen? Schauen wir uns zwei weitere Beispiele an:

Beispiel 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>

Beispiel 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>

Testergebnisse: Methoden mit demselben Namen und unterschiedlichen Parametern verwenden die zuletzt geladene Methode, um die vorherige zu überschreiben!

【Empfohlenes Lernen: Javascript-Tutorial für Fortgeschrittene

Das obige ist der detaillierte Inhalt vonWas passiert, wenn eine Methode mit demselben Namen in JavaScript erscheint?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn