(function($) {…})(jQuery);
function(arg){...}
이것은 익명 함수를 정의했고 매개 변수는arg이다.
함수를 호출할 때 함수 뒤에 괄호와 실참을 쓴다!!
연산자의 우선 순위 때문에 함수 자체에도 괄호가 필요합니다. 즉,
(function(arg){...})(param)
이것은 매개 변수가arg인 익명 함수를 정의하는 것과 같다.
이 익명 함수를 매개 변수로 호출합니다.
반면(function($)(jQuery)는 같고,
인삼에서만 $를 사용하는 이유는 다른 라이브러리와 충돌하지 않기 위해서입니다.
그러니까 실참용 jQuery.
《 = = 과 같다 》.
var fn = function($){...}
fn(jQuery);
2.
jQuery(function(){
...
});
모두
jQuery(document).ready(function(){
...
});
$(function(){
...
});
모두 쓰기:
$(cocument).ready(function(){
...
});
3.
jQuery(function(){
...
});
작업 DOM 객체를 저장하는 데 사용되는 코드입니다.
이 코드를 실행할 때 DOM 객체가 이미 존재합니다.
개발 플러그인을 저장하는 데 사용할 수 없는 코드,
jQuery 대상이 전달되지 않았기 때문에,
외부는 jQuery를 통과합니다.method도 그 중의 방법 (함수) 을 호출할 수 없습니다.
(function(){
...
})(jQuery);
개발 플러그인을 저장하는 코드,
코드를 실행할 때 DOM이 반드시 존재하는 것은 아닙니다.
따라서 DOM 작업을 직접 자동으로 수행하는 코드는 주의해서 사용하십시오.
[이렇게 하면 내부 변수와 외부 변수가 충돌하지 않도록 합니다. 예를 들어 $jQuery 등 jquery 내부에서 정의한 변수입니다.]
[(function($) {})(jQuery) 이 쓰기의 주요 역할은 jquery가 다른 라이브러리나 변수와 충돌하지 않도록 하는 것이다. 우선 jQuery라는 변수 이름이 외부와 충돌하지 않도록 해야 한다(jquery 내부 $와 jQuery가 같은 물건에 두 개의 이름이 있는 이유는 $와 다른 변수 이름이 충돌할까 봐 두 번째 jQuery가 다른 변수와 충돌할 확률이 매우 적기 때문이다)익명의 대상을 전송합니다. 익명의 대상은 매개 변수에 $(사실은 jquery 내부와 같습니다) 라고 이름을 붙이면 외부 변수와 충돌하지 않고 자유롭게 (function ($) {} (jQuery) 플러그인을 쓸 수 있습니다.
HTML>
<script/>
<script>
(function($){
console.log("---- begin------");
/**
1
*/
$.methodOne = function(p){
if(p == 1) {
console.log("OK");
} else {
console.log("NO");
}
var result = addP(p);
console.log(result);
//
function addP(p) {
return p + "--- result ---";
}
}
/**
2
*/
$.tempMethod = {
//
add:function(a,b){
return a + b;
},
//
reduce:function(a,b) {
return a - b;
},
//
multiply:function(a,b) {
return a * b;
},
//
three:{
//
add:function(a,b,c){
return a + b + c;
},
//
reduce:function(a,b,c) {
return a - b - c;
},
//
multiply:function(a,b,c) {
return a * b * c;
}
}
};
})(jQuery);
$(document).ready(function(){
// 1
$.methodOne(1);
//$.methodOne(3);
// 2
var a = 8;
var b = 4;
var c = 2;
var result1 = $.tempMethod.add(a,b);
var result2 = $.tempMethod.reduce(a,b);
var result3 = $.tempMethod.multiply(a,b);
var result4 = $.tempMethod.three.add(a,b,c);
var result5 = $.tempMethod.three.reduce(a,b,c);
var result6 = $.tempMethod.three.multiply(a,b,c);
console.log("result1 : " + result1);
console.log("result2 : " + result2);
console.log("result3 : " + result3);
console.log("result4 : " + result4);
console.log("result5 : " + result5);
console.log("result6 : " + result6);
});
</script>
</code></pre>
<p><br/></p>
</div>
</div>
</div>
</div>
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Portswigger의 연구실 작성: CSRF 토큰 보호를 사용한 기본 클릭재킹이 견습생 수준 실습에서는 일부 CSRF 토큰 보호가 있음에도 불구하고 클릭재킹에 취약한 웹사이트에서 계정 삭제 흐름을 악용합니다. 주어진 자격 증명으로 로그인하면 계정 페이지로 이동한 후 사용자 계정을 삭제하는 데...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.