JavaScript DHTML/Mochkit/partial
test partial application
<source lang="html4strict">
<html>
<head>
<script type="text/javascript" src="MochiKit-1.4.2/lib/MochiKit/Base.js"></script> <script type="text/javascript" src="MochiKit-1.4.2/lib/MochiKit/Iter.js"></script> <script type="text/javascript" src="MochiKit-1.4.2/lib/MochiKit/DOM.js"></script> <script type="text/javascript" src="MochiKit-1.4.2/lib/MochiKit/Style.js"></script> <script type="text/javascript" src="MochiKit-1.4.2/lib/MochiKit/Logging.js"></script> <script type="text/javascript" src="MochiKit-1.4.2/lib/MochiKit/Iter.js"></script>
</head> <body>
<script type="text/javascript"> var a = []; var func = function (a, b) { if (arguments.length != 2) { return "bad args"; } else { return this.value + a + b; } }; var self = {"value": 1, "func": func}; var self2 = {"value": 2}; alert( self.func(2, 3), 6, "setup for test is correct" ); self.funcTwo = partial(self.func, 2); alert( self.funcTwo(3), 6, "partial application works" ); alert( self.funcTwo(3), 6, "partial application works still" ); alert( bind(self.funcTwo, self2)(3), 7, "rebinding partial works" ); self.funcTwo = bind(bind(self.funcTwo, self2), null); alert( self.funcTwo(3), 6, "re-unbinding partial application works" ); </script>
</body> </html>
</source>