Mootools에서 extend와 implement를 사용하여 함수 확장 기능이나 방법
3750 단어 mootools
많은 사람들이 Mootools가 대상을 대상으로 하는 메커니즘이 괜찮다는 것을 알고 있지만 대부분의 사람들은 대상을 대상으로 하는 것을 잘못 이해하고 대상을 대상으로 하는 것이 유형이라고 생각한다. 그렇지 않으면 대상을 대상으로 하는 범위가 매우 넓다.
그러면 나의 이 글은 사실상 대상을 대상으로 하는 응용이다. 단지 이 대상은function이지class가 아니다.
// Function
var Fun=function(){
alert('a')
};
Fun.extend({
aa:function(){
alert('b');
}
});
Fun();
Fun.aa();
위의 코드에서 함수 Fun의 유일한 용도는 a라는 문자를 출력하는 것이다. 이때 우리는 이 함수를 하나의 대상으로 이해한다. 만약에 우리가 이 함수에 새로운 방법을 추가해서 그가 a를 출력할 수 있는 것 외에 b를 출력할 수 있도록 해야 한다.
그래서 저는 extend로 Fun이라는 대상을 확장하는 방법을 사용했습니다. 확장된 방법이 호출될 때 약간 다를 수 있습니다.
다음 예는 속성과 방법을 확장하는 방법을 동시에 보여 준다.
var arr=[];
var Fun=function(){
arr=[1,2];
};
Fun.extend({
len:function(){// Fun
return arr.length;
},
add:function(val){// Fun
arr.push(val);
}
});
var a=Fun.len(arr);
alert(a+'|'+arr);// :0|
Fun();// arr
var a=Fun.len();
alert(a+'|'+arr);// :2|1,2
Fun.add(' ');
var a=Fun.len();
alert(a+'|'+arr);// :3|1,2,
Fun.add(['a','b','c']);
var a=Fun.len();
alert(a+'|'+arr);// :4|1,2, ,a,b,c
len은 제가 확장한 속성입니다. arr의 length 수를 얻는 데 사용되고add는 하나의 방법입니다. arr라는 array에 새로운 값을 추가하는 데 사용되는implement는 모든 함수를 확장하는 방법입니다. 사실 잘 이해합니다. 우리는 이미 Mootools에pass,bind,delay 등이 있다는 것을 알고 있습니다. 이런 방법은 모두 Mootools가 우리에게 미리 정의한 것입니다.
그러나 만약에 당신이 실제 개발 과정에서 그가 우리를 위해 미리 정의한 방법이 우리의 수요를 만족시키지 못한다는 것을 발견한다면 어떻게 해야 합니까? 간단합니다. 자신이 확장하기만 하면 됩니다. 아래를 보십시오.
// Function
var a=function(){};
var b=function(){};
Function.implement({
alert:function(msg){// alert
alert(msg);
},
output:function(msg){//firebug ,IE
console.log(msg);
}
});
a.alert('1');
a.output('2');
b.output('3');
이 글을 본 후에 당신은 Mootools의 대상에 대해 새로운 인식을 가지게 되었습니까?
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Mootools에서 delay라는 지연 함수의 고급 사용법이것은 가장 간단한 용법이다. 이 함수는 1초 후에 자동으로 실행된다 delay라는 함수의 실현 방법을 봅시다. 이것은 set Timeout을 사용하여 이루어진 것이 분명하다. 그러면 우리는 그를 정리할 수 있고 다...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.