동일한 코드 세그먼트에 동일한 이름과 매개변수를 가진 두 개의 JS 메서드가 있는 경우 마지막으로 로드된 메서드가 이전 메서드를 덮어씁니다. 반대로 현재 코드 세그먼트에서 해당 메서드를 찾을 수 있으면 해당 메서드가 덮어쓰여집니다. 즉시 전화했습니다.
이 튜토리얼의 운영 환경: Windows 7 시스템, JavaScript 버전 1.8.5, Dell G3 컴퓨터.
JS에서 이름과 매개변수가 같은 메서드가 있으면 어느 쪽을 먼저 호출할까요? 먼저 두 가지 예를 살펴보겠습니다.
예 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>
결과가 나타날 것입니다: 1 2
예 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>
결과가 나타날 것입니다: 2 2
이것은 많은 관련이 있습니다 현재 코드 세그먼트. 이름과 매개변수가 동일한 두 JS 메소드의 동일한 코드 세그먼트 내에서 마지막으로 로드된 메소드가 이전 메소드를 덮어씁니다. 반대로 현재 코드 세그먼트에서 해당 메소드를 찾을 수 있으면 즉시 호출됩니다.
JS에서 이름은 같고 매개변수가 다른 메서드가 있으면 어떤 메서드를 먼저 호출할까요? 두 가지 예를 더 살펴보겠습니다.
예제 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>
예제 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>
테스트 결과: 이름이 같고 매개변수가 다른 메서드는 마지막으로 로드된 메서드를 사용하여 이전 메서드를 덮어씁니다!
【추천 학습: javascript 고급 튜토리얼】
위 내용은 JavaScript에 같은 이름의 메소드가 나타나면 어떻게 될까요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!