라벨이 function인 게시물 표시

prototype.js invoke 사용시 user-defined 함수 호출방법

실력 형편없어 4시간정도 삽질을 했다. [code js] function addSharp(s){       return '#'+s; } var color = ['00FF00','FFFFAA','AADDEE']; var rs = color.invoke('addSharp').join(','); [/code] 동작하지 않을것이다. 기본적으로 prototype api에도 substring이나 toUpperString 같은 함수만 예제로 나와있다. 직접 정의해서 해보면 급하게 실망하고 구글링하다 여기 들어오셨을 분들이 많을것같다.(-.-ㅋ 별문제없이 해결하시는 고수분도 있으시겠지만....) [code js] Object.extend(String.prototype, {       addSharp : function(el){             return '#'+this;       } } ); [/code] addSharp함수를 위와 같이 정의 해주면 된다. (보시는분중에 인자로 받은 el은 어떻게 되느냐? 하시는 분이 있을텐데, 아무값도 넘어오지 않는다. 저기도 삽질 포인트이다. prototype.js를 열어봤으나 아직하수라 정확히 이해 못했으므로 패스) 위 구문은 아래와 같이 해도 잘 동작한다. ( 혹자는 위 구문이 더 객체지향적이라한다. 하지만 아래구문도 직관적이라 별 차이 없는것 같다.) [code js] String.prototype.addSharp = function(e){       return '#'+this.; } [/code]