>웹 프론트엔드 >JS 튜토리얼 >Javascript 함수 패킹은 주로 이벤트 바인딩_js 객체 지향에 사용됩니다.

Javascript 함수 패킹은 주로 이벤트 바인딩_js 객체 지향에 사용됩니다.

WBOY
WBOY원래의
2016-05-16 19:07:011398검색


[Ctrl A 모두 선택 참고: 외부 J를 도입해야 하는 경우 실행하려면 새로 고쳐야 합니다.
]<script> function addShell(func,name,obj) { func=Function(func); if(!obj) obj=window; var old = obj[name]; if (typeof obj[name] != 'function') { obj[name] = func; } else { obj[name] = function() { var ja=[]; var t = obj[name].arguments; for(var x=0;x<t.length;x++) ja.push(t[x]); old.apply(null,ja); func.apply(null,ja); } } } //--测试代码开始-- addShell('alert(arguments[0]+":"+arguments[1]+":"+arguments[2])',"aaa"); addShell('alert(arguments[0]+":"+arguments[1]+":"+arguments[2])',"aaa"); addShell('alert(arguments[0]+":"+arguments[1]+":"+arguments[2])',"aaa"); addShell('alert(arguments[0]+":"+arguments[1]+":"+arguments[2])',"aaa"); addShell('alert(arguments[0]+":"+arguments[1]+":"+arguments[2])',"aaa"); addShell('aaa("1111","3333","5555")',"onload"); addShell('aaa("1","3","5")',"onload"); //--测试代码结束-- </script>
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.