JavaScript에서 함수를 호출하는 방법은 다음과 같습니다. 1. makeArray 함수를 해당 메서드 중 하나로 사용하고 json을 사용하여 객체를 선언합니다. 2. [obj.myFunction()] 메서드를 사용하여 구문을 호출합니다.
이 튜토리얼의 운영 환경: Windows 7 시스템, JavaScript 버전 1.8.5, DELL G3 컴퓨터.
JavaScript에서 함수를 호출하는 방법은 다음과 같습니다.
JavaScript 함수 호출 규칙 1
myFunction()과 같은 명확한 소유자 객체 없이 직접 호출되는 함수에서 this의 값은 기본 개체(브라우저의 창)
함수 호출
이제 간단한 개체를 만들고 makeArray 함수를 해당 메서드 중 하나로 사용하겠습니다. json을 사용하여 개체를 선언하고 이 메서드도 호출하겠습니다.
//creating the object var arrayMaker = { someProperty: 'some value here', make: makeArray }; //invoke the make() method arrayMaker.make('one', 'two'); // => [ arrayMaker, 'one', 'two' ] // alternative syntax, using square brackets arrayMaker['make']('one', 'two'); // => [ arrayMaker, 'one', 'two' ]
여기에서 차이점을 확인하세요. 원래 함수 정의가 왜 변경되지 않았는지, 왜 창이 아닌지 궁금할 것입니다. 이것이 JSavascript에서 함수가 전달되는 방식이고 함수는 JavaScript의 표준입니다. 데이터 유형은 객체입니다. 정확하게 말하면 매개변수 목록과 함수 본문이 포함된 전체 함수를 복사하여 arrayMaker의 make 속성에 할당한 다음 arrayMaker:
var arrayMaker = { someProperty: 'some value here', make: function (arg1, arg2) { return [ this, arg1, arg2 ]; } };
JavaScript 함수를 정의하는 것과 같습니다. 호출 규칙 2
obj.myFunction() 또는 obj['myFunction']()과 같은 메서드 호출 구문에서 이 값은 obj
이것은 이벤트 처리입니다. 코드에 있는 버그의 주요 소스는 다음과 같습니다. 이 예제를 보세요
<input type="button" value="Button 1" id="btn1" /> <input type="button" value="Button 2" id="btn2" /> <input type="button" value="Button 3" id="btn3" onclick="buttonClicked();"/> <script type="text/javascript"> function buttonClicked(){ var text = (this === window) ? 'window' : this.id; alert( text ); } var button1 = document.getElementById('btn1'); var button2 = document.getElementById('btn2'); button1.onclick = buttonClicked; button2.onclick = function(){ buttonClicked(); }; </script>
첫 번째 버튼을 클릭하면 메서드 호출이므로 "btn"이 표시되고 이것이 속한 개체(버튼 요소)입니다. 두 번째 버튼을 클릭하면 "창"이 표시됩니다. "buttonClicked가 직접 호출되기 때문입니다. (obj.buttonClicked()와는 다릅니다.) 이는 이벤트 핸들러를 레이블에 직접 배치하는 세 번째 버튼과 동일합니다. 따라서 세 번째 버튼을 클릭한 결과는 세 번째 버튼과 동일합니다.
jQuery와 같은 JS 라이브러리를 사용하면 이벤트 처리 함수가 jQuery에 정의될 때 JS 라이브러리가 현재 이벤트 소스 요소에 대한 참조가 포함되도록 이 값을 다시 작성하는 데 도움이 된다는 이점이 있습니다.
//使用jQuery $('#btn1').click( function() { alert( this.id ); // jQuery ensures 'this' will be the button });
관련 무료 학습 권장사항: javascript 비디오 튜토리얼
위 내용은 자바스크립트에서 함수를 호출하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!