zoukankan      html  css  js  c++  java
  • javascript小结

      window是浏览器构造的对象实例
            //基本类型  Undefined、Null、Boolean、Number和String
            //在函数内部,不使用var 定义,那么变量属于window
            //字符串如果内容为空,if判断也是false;
            //number 如果=0, if 判断是false;
            //undefined null       if 判断都是false;
            //var num = 0;       if 判断都是false;

            //

     var factorial = (function fact(num) { // 函数名 fact 在外部访问是undefined
            if (num <= 1) {
                return 1;
            } else {
                return num * fact(num - 1);
            }
        });

    //

    // 糟糕的例子
    // 构造一个函数,用错误的方式给一个数组中的节点设置事件处理程序。
    // 当点击一个节点时,按照预期,应该弹出一个对话框显示节点的序号,
    // 但它总是会显示节点的数目
    
    var add_the_handlers = function (nodes) {
        var i;
        for (i = 0; i < nodes.length; ++i){
            nodes[i].onclick = function (e) {
                alert(i);  
            };
        }
    };    //每一个事件处理函数,都弹出一个对话框显示节点的数目 nodes.length
    //
    // 改良后的例子
    
    // 构造一个函数, 用正确的方式给一个数组中的节点设置事件处理程序,
    // 点击一个节点,将会弹出一个对话框显示节点的序号。
    
    var add_the_handlers = function (nodes) {
        var i;
        var helper = function (i) {
    return function (e){ alert(i);
    }; }; for(i = 0; i < nodes.length; ++ i){ nodes[i].onclick = helper(i); } };
    //
    情形一:传入的参数是函数的别名,那么函数的this就是指向window

      情形二:传入的参数是被new过的构造函数,那么this就是指向实例化的对象本身;

    
    

      情形三:如果我们想把被传入的函数对象里this的指针指向外部字面量定义的对象,那么我们就是用apply和call

     
  • 相关阅读:
    HDU
    CodeForces
    CodeForces
    TensorFlow下利用MNIST训练模型并识别自己手写的数字
    李宏毅机器学习笔记2:Gradient Descent(附带详细的原理推导过程)
    李宏毅机器学习笔记1:Regression、Error
    tensorflow相关API的学习
    解决winscp中普通用户无法上传、删除、移动文件
    2019最新最全HUSTOJ本地及云端服务器搭建(基于腾讯云服务器)
    解决Ubuntu无法进行SSH连接的问题(以及如何使用SSH)
  • 原文地址:https://www.cnblogs.com/laogao/p/4673166.html
Copyright © 2011-2022 走看看