매일 작성하는 코드에 주의하세요. 함수 호출이 모두 xxxxx(), xxx.xxx() 또는 xxx.call() 등의 형식이 아닌가요? 이 코드는 takeNoteButton의 onclick 속성에 createNote라는 함수 이름이 할당되어 있음을 알 수 있습니다. 실제 참조는 아래에 선언된 특정 함수를 가리킵니다.
이런 식으로 브라우저가 takeNoteButton의 클릭 이벤트를 모니터링하면 실제로 takeNoteButton.onclick(event)과 같은 함수 호출을 하는 것을 상상해 볼 수 있습니다.
아래 매개변수에 대해 이야기해 보겠습니다. 함수 호출에 의해 전달되는 실제 매개변수와 함수 선언의 형식 매개변수는 실제로 별개이므로 대응할 필요가 없습니다. 또한 선언 시 지정된 매개변수를 전달할 필요도 없습니다. (정의되지 않은 것으로 처리됩니다.) Call 실제로 전달된 매개변수가 선언된 함수 본문에서 사용되지 않는 경우에는 전혀 문제가 없습니다.
예를 들어 이 이벤트를 클릭하면 호출되는 함수는 브라우저 자체에서 호출되며 이벤트 개체가 실제 매개변수로 전달됩니다. 그런 다음 거꾸로 작업하면 특정 함수 본문을 작성할 때 이벤트, e, abc 또는 사양을 준수하는 모든 이름을 공식 매개 변수로 사용하여 전달된 실제 매개 변수를 얻을 수 있습니다. 물론 다음과 같은 작업이 필요하지 않습니다. 형식 매개변수를 사용하여 다음과 같이 전달된 실제 매개변수에 액세스할 수도 있습니다.
으아악
실제로 이는 일부 구성 요소 플러그인을 작성하기 위한 매개 변수 설계 아이디어도 제공합니다. 구성 요소 내부의 함수를 호출할 때 들어오는 실제 매개 변수를 지정할 수 있으며 이 실제 매개 변수의 특정 값은 플러그인에 대한 노출 매개 변수로 설계될 수 있습니다. 외부 사용. jQuery의 간단한 예를 들어보세요.
으아악
이 코드는 $().plugin()을 통해 호출하여 기본 기본값 a를 출력할 수 있습니다.
$().plugin({a : '123'})을 사용하여 지정된 매개변수를 전달하고 123을 출력할 수도 있습니다 우리가 실제로 작성한 함수의 형식 매개변수는 여전히 a이고, 실제로 함수를 호출할 때 전달되는 매개변수는 여전히 options.a이며, 외부 매개변수의 기본값은 전달되지 않습니다.
js의 함수 호출은 줄 매개변수의 수와 관련이 없습니다. js의 함수 매개변수는 인수와 유사한 배열입니다. 즉, 매개변수를 전달하면 해당하는 인수는 [0]입니다. 매개변수가 두 개인 경우에는 인수 [0]과 인수[1]입니다. 따라서 행 매개변수의 개수와 실제 매개변수의 개수가 정확히 일치할 필요는 없습니다. 함수의 맨 아래 레이어는 전달하는 매개변수의 개수에 따라 일치하게 됩니다.
이 질문은 함수를 호출할 수 있는지 묻는 질문이므로 다소 결함이 있다고 생각합니다. 물론 이 함수는 window의 다음 변수에 속하기 때문에 호출될 수 있습니다. 사실 함수도 변수입니다! 이는 단지 특별할 뿐입니다. 형식 매개변수가 있지만 반드시 실제 매개변수는 아닙니다. 전달하는 실제 매개변수가 특별하거나 다른 범위에 있는 경우 이를 전달하기 전에 실제 매개변수를 가져와야 합니다. 그렇지 않으면 이를 사용할 때 오류가 보고됩니다. 매개변수
사실 이 코드는 이런 함수를 호출하지 않습니다
으아악매일 작성하는 코드에 주의하세요. 함수 호출이 모두 xxxxx(), xxx.xxx() 또는 xxx.call() 등의 형식이 아닌가요?
이 코드는 takeNoteButton의 onclick 속성에 createNote라는 함수 이름이 할당되어 있음을 알 수 있습니다. 실제 참조는 아래에 선언된 특정 함수를 가리킵니다.
이런 식으로 브라우저가 takeNoteButton의 클릭 이벤트를 모니터링하면 실제로 takeNoteButton.onclick(event)과 같은 함수 호출을 하는 것을 상상해 볼 수 있습니다.
아래 매개변수에 대해 이야기해 보겠습니다. 함수 호출에 의해 전달되는 실제 매개변수와 함수 선언의 형식 매개변수는 실제로 별개이므로 대응할 필요가 없습니다. 또한 선언 시 지정된 매개변수를 전달할 필요도 없습니다. (정의되지 않은 것으로 처리됩니다.) Call 실제로 전달된 매개변수가 선언된 함수 본문에서 사용되지 않는 경우에는 전혀 문제가 없습니다.
예를 들어 이 이벤트를 클릭하면 호출되는 함수는 브라우저 자체에서 호출되며 이벤트 개체가 실제 매개변수로 전달됩니다. 그런 다음 거꾸로 작업하면 특정 함수 본문을 작성할 때 이벤트, e, abc 또는 사양을 준수하는 모든 이름을 공식 매개 변수로 사용하여 전달된 실제 매개 변수를 얻을 수 있습니다. 물론 다음과 같은 작업이 필요하지 않습니다. 형식 매개변수를 사용하여 다음과 같이 전달된 실제 매개변수에 액세스할 수도 있습니다. 으아악
실제로 이는 일부 구성 요소 플러그인을 작성하기 위한 매개 변수 설계 아이디어도 제공합니다. 구성 요소 내부의 함수를 호출할 때 들어오는 실제 매개 변수를 지정할 수 있으며 이 실제 매개 변수의 특정 값은 플러그인에 대한 노출 매개 변수로 설계될 수 있습니다. 외부 사용. jQuery의 간단한 예를 들어보세요.으아악
이 코드는 $().plugin()을 통해 호출하여 기본 기본값 a를 출력할 수 있습니다.$().plugin({a : '123'})을 사용하여 지정된 매개변수를 전달하고 123을 출력할 수도 있습니다
우리가 실제로 작성한 함수의 형식 매개변수는 여전히 a이고, 실제로 함수를 호출할 때 전달되는 매개변수는 여전히 options.a이며, 외부 매개변수의 기본값은 전달되지 않습니다.
js의 함수 호출은 줄 매개변수의 수와 관련이 없습니다. js의 함수 매개변수는 인수와 유사한 배열입니다. 즉, 매개변수를 전달하면 해당하는 인수는 [0]입니다. 매개변수가 두 개인 경우에는 인수 [0]과 인수[1]입니다. 따라서 행 매개변수의 개수와 실제 매개변수의 개수가 정확히 일치할 필요는 없습니다. 함수의 맨 아래 레이어는 전달하는 매개변수의 개수에 따라 일치하게 됩니다.
물론 가능합니다. onclick은 실제로 호출하는 것이 아니라 createNote 함수를 가리키는 포인터라는 것을 이해할 수 있습니다. 이 onclick 메소드 호출은 브라우저에 의해 수행되며 브라우저는 e 매개변수를 전달합니다.
다음 코드를 이해할 수 있습니다:
으아악으아악
JS에서는 형식 매개변수와 실제 매개변수가 반드시 일대일로 대응할 필요는 없습니다. 이벤트 수신 함수는 콜백 함수와 동일합니다.
이벤트가 발생하면 브라우저는 이 함수를 호출하고 이벤트 개체를 전달합니다.
이 질문은 함수를 호출할 수 있는지 묻는 질문이므로 다소 결함이 있다고 생각합니다. 물론 이 함수는 window의 다음 변수에 속하기 때문에 호출될 수 있습니다. 사실 함수도 변수입니다! 이는 단지 특별할 뿐입니다. 형식 매개변수가 있지만 반드시 실제 매개변수는 아닙니다. 전달하는 실제 매개변수가 특별하거나 다른 범위에 있는 경우 이를 전달하기 전에 실제 매개변수를 가져와야 합니다. 그렇지 않으면 이를 사용할 때 오류가 보고됩니다. 매개변수