zoukankan      html  css  js  c++  java
  • javascript 典型闭包的用法

    <body>
    <input type="radio" id="radio1" name="readionGroup" />
    <input type="radio" id="radio2" name="readionGroup" />
    <input type="radio" id="radio3" name="readionGroup" />
    <script type="text/javascript" language="javascript">
            var add_the_handlers = function (nodes) {
                var i;
                for (i = 0; i < nodes.length; i += 1) {
                    nodes[i].onclick = function (e) {
                        alert(e);
                    }
                }
            };
            add_the_handlers(readionGroup);
        </script>
    </body>

    给每个radio赋一个onclick,上面写发是错误的,都弹出的时候nodes.length 
    红色标识的部分是一个上下文,所以当用户点击的时候,一直用到的变量是i=3

    ------------------------------------------------------------------------------------------

    var add_the_handlers = function (nodes) {
                var i;
                for (i = 0; i < nodes.length; i += 1) {
                    (function(j){
                        nodes[j].onclick = function () {
                            alert(j);
                        }
                    })(i);
                }
            };
            add_the_handlers(readionGroup);

    //红色表示的部分是一个上下文

  • 相关阅读:
    python系列十二:python3模块
    python系列十一:python3数据结构
    python系列十:python3函数
    python系列九:python3迭代器和生成器
    python系列八:Python3条件控制&循环语句
    python系列七:Python3字典dict
    python系列六:Python3元组tuple
    Linux Ubuntu 安装SSH服务
    Linux Ubuntu 查看IP
    Linux 基础命令
  • 原文地址:https://www.cnblogs.com/niaowo/p/3686101.html
Copyright © 2011-2022 走看看