>웹 프론트엔드 >JS 튜토리얼 >js 메소드 재작성 및 오버로딩 기술에 대한 자세한 설명

js 메소드 재작성 및 오버로딩 기술에 대한 자세한 설명

亚连
亚连원래의
2018-05-17 10:06:544277검색

js 메소드는 오버로드할 수 없습니다. 이유는 js Advanced Programming 111페이지에 설명되어 있습니다. 요약하면

js 메소드는 다음과 같이 작성할 수 있습니다.

var func1 = function(){
    console.log("func1  test");
}123

이 메소드는 매개변수와 동일합니다. 메소드 오버로딩은 다음을 의미합니다. 메소드 이름은 같지만 매개변수가 다르지만 다른 메소드라는 것입니다. 그러나 js에는 매개변수가 다르기 때문에 이 기능이 없습니다. 예:

$(function(){
    console.log("------**********开始了************---------");
    funTest(100,200,300);
})function funTest(num,num1){
    console.log("funTest2 satrt")
    console.log(arguments.length);
    console.log(arguments[0]);
    console.log(num);
    console.log(num1);
    console.log(num+200)
}12345678910111213141516171819
funTest에 매개변수가 3개 있어도 그렇지 않습니다. 오류를 보고하려면 다음 함수를 실행할 수도 있습니다. 이 두 가지 이유는 js 메서드가 오버로드되지 않기 때문입니다. 직접적으로 말하면, 다른 매개변수는 다른 기능을 가져오지 않습니다. js 함수는 이후 매개변수가 이전 매개변수를 덮어쓰는 것과 동일하므로 js가 오버로드되지 않습니다.

JS 메소드 재작성

메소드 재작성은 메소드 매개변수

arrays

angumentsobjects를 사용하여 구현됩니다. 제 생각에는 js 객체가 메소드를 동적으로 추가할 수 있고 재작성할 필요가 없다고 생각합니다. 아직 현장을 접하지 못한 것 같아서 써보고 적어보도록 하겠습니다.

$(function(){
    console.log("------**********开始了************---------");
    funTest(100,200,300);
})function funTest(num,num1){
    console.log("funTest2 satrt")
    console.log(arguments.length);
    console.log(arguments[0]);
    console.log(num);
    console.log(num1);
    console.log(num+200)
}
위 내용은 제가 여러분을 위해 정리한 js 메소드의 재작성 및 오버로딩 기술에 대한 자세한 설명입니다. 앞으로 도움이 되길 바랍니다.

관련 글:

JSON 사용법

json 관련 구문 이해

js 동적 소개 및 사용법에 대한 자세한 설명

위 내용은 js 메소드 재작성 및 오버로딩 기술에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.