javascript - onclick이 매개변수 포함 함수를 직접 호출할 수 없지만 onclick=function(){fn(p)} 형식으로 작성해야 하는 이유는 무엇입니까?
高洛峰
高洛峰 2017-05-19 10:31:56
0
2
815

JS 초보자님, onclick이 매개변수 포함 함수를 직접 호출할 수 없지만 onclick=function(){fn(p)} 형식으로 작성해야 하는 이유는 무엇인지 물어보세요. 비매개변수 함수는 onclick=fn();과 같이 직접 작성할 수 있습니다.
기본 원리는 무엇인가요? 감사합니다

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

모든 응답(2)
PHPzhong

onclick은 실제로 다음과 같이 매개변수가 있는 함수에 직접 바인딩될 수 있습니다. onclick其实是可以直接绑定有参数的函数,如下:

const input = document.getElementById('input');
input.onclick = function(params){
  console.log(params);
};

但是,请注意,你的需求是执行函数fn(p),执行的结果是返回一个值,而不是一个函数。
onclick作为点击时的回调事件,如果绑定,是一定要绑定一个函数的,而不是一个值。如下:

input.onclick = function(){
  fn(p);
};

这里的意思是,给input绑定一个onclick事件,这个事件是一个函数,点击时,回调就被执行了,意味着函数也被执行了,函数执行时,其中的语句fn(p) 으아악

단, 요구 사항은 fn(p) 함수를 실행하는 것이며, 실행 결과는 함수가 아닌 값을 반환하는 것입니다.
onclick은 클릭 시 콜백 이벤트입니다. 바인딩된 경우 값이 아닌 함수에 바인딩되어야 합니다. 다음과 같습니다: 🎜 으아악 🎜여기서의 의미는 onclick 이벤트를 입력에 바인딩하는 것입니다. 이 이벤트는 클릭하면 콜백이 실행됩니다. 즉, 함수가 실행될 때에도 실행됩니다. fn(p) 문이 실행됩니다. 🎜
小葫芦

으아악

이 클릭 기능을 바인딩하고 결과를 확인해 보세요

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!