JavaScript DHTML/Mochkit/forEach

Материал из Web эксперт
Версия от 07:25, 26 мая 2010; Admin (обсуждение | вклад) (1 версия)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к: навигация, поиск

forEach handles array-like iterables

 
<!--
MochiKit is dual-licensed software.  It is available under the terms of the
MIT License, or the Academic Free License version 2.1.  The full text of
each license is included below.
-->
<!-- Code revised from MochiKit demo code -->
<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>
<pre id="test">
<script type="text/javascript">
    var rval = [];
    var o = [0, 1, 2, 3];
    o.next = range(2).next;
    forEach(o, rval.push, rval);
    alert( rval.length );
</script>
</pre>
</body>
</html>



forEach works bound

 
<!--
MochiKit is dual-licensed software.  It is available under the terms of the
MIT License, or the Academic Free License version 2.1.  The full text of
each license is included below.
-->
<!-- Code revised from MochiKit demo code -->
<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>
<pre id="test">
<script type="text/javascript">
    var rval = [];
    forEach(range(2), rval.push, rval);
    alert( compare(rval, [0, 1]));
</script>
</pre>
</body>
</html>



forEach works unbound

 
<!--
MochiKit is dual-licensed software.  It is available under the terms of the
MIT License, or the Academic Free License version 2.1.  The full text of
each license is included below.
-->
<!-- Code revised from MochiKit demo code -->
<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>
<pre id="test">
<script type="text/javascript">
var rval = [];
    function foo(o) {
        rval.push(o);
    }
    forEach(range(2), foo);
    alert( compare(rval, [0, 1, 0, 1]));
</script>
</pre>
</body>
</html>