지금은 jQuery를 점차 줄여나가고 있지만(아직도 프로젝트에서는 jQuery를 사용하는 편이 더 효율적입니다. 기본적으로 일상생활에서는 사용하지 않습니다.) jQuery에 대한 의존도를 줄이고 싶습니다.
그런데 이 체인 연산 방식이 정말 매력적이네요(현재 많은 신규 라이브러리가 체인 연산을 사용하는 것 같습니다).
초보자도 두렵지 않아서 다음과 같은 코드를 작성했습니다. 중요한 건 앞으로도 잊지 않는 거겠죠, 하하.
window.k = function() {
return new k.fn.init(arguments);
}
k.fn = k.prototype = {
init:function() {
this.length = 0; //var args = Array.prototype.slice.call(arguments,0);
Array.prototype.push.apply(this,arguments[0])
return this; >show: function() {
console.log(Array.prototype.slice.call(this,0).join("$"))
return this;
},
hide :function( ) {
console.log(this);
return this
}
}
k.fn.init.prototype = k.fn; (k( "0",1,2,3,4,5).show().hide());
이것은 단순한 연쇄 작업입니다. 그러나 firbug에서는 jQuery 객체가 배열/클래스 배열을 반환하는 것을 볼 수 있습니다. 나는 이것을 달성하고 싶지만 어떻게 해야 할지 모르겠습니다. .
k.fn.prototype = new Array()로 설정할 수 없습니다. jQuery 소스 코드를 보는 것은 정말 피곤한 일입니다. .