zoukankan      html  css  js  c++  java
  • javaScript学习day04——关于函数

    关于函数


    获取函数的类型

        function f1(){
            console.log("I'm function.");
        }
        console.log(typeof f1);

    函数作为参数调用

    一个函数被作为参数调用,那么这个函数就是回调函数

     1     function f2(fn){
     2         fn();
     3     }
     4 
     5     function f1(){
     6         console.log("I'm function.");
     7     }
     8     console.log(typeof f1);
     9 
    10     f2(f1);//调用函数,f1不加括号

    函数作为返回值使用

     1  function f3()
     2     {
     3         console.log("11");
     4         return function(){
     5             console.log("函数作为返回值");
     6         };
     7     }
     8     var f=f3();
     9     console.log(f);/*输出:ƒ (){
    10                                 console.log("函数作为返回值");
    11                             }*/
    12     f();//输出:函数作为返回值

    作用域

      全局变量:声明的变量是在函数外使用var声明的,那么就是全局变量,可以在页面的任何一个地方使用。

      局部变量:在函数内部定义的变量,出了函数就不能使用了

      隐式全局变量:声明的变量没有var,就叫隐式全局变量

      全局变量是不能被删除的,隐式全局变量是可以被删除的 

      定义变量使用var是不会被删除的,没有var是可以删除的

    1 function f1(){
    2     num=1000;//隐式全局变量
    3 }
    4 f1();
    5 console.log(num);

      *全局变量如果页面不关闭,那么就不会释放,就会占内存、消耗空间

      所以少使用全局变量

      全局作用域:全局变量的使用范围

      局部作用域:局部变量的使用范围

      块级作用域:一对大括号就是一块,在这个块里定义的只能在这里使用;js里没有块级作用域

      


    作用域链

  • 相关阅读:
    Untiy数据包的输出、加载和卸载
    Line 7.10 : Syntax error
    给力的数学巧算法!
    Unity3d + NGUI 的多分辨率适配
    Linq小记
    (转)为C# Windows服务添加安装程序
    Javamail使用代码整理
    .NET后台访问其他站点代码整理
    (转)2009-05-25 22:12 Outlook2007选择发送帐号
    (转)C#与Outlook交互收发邮件
  • 原文地址:https://www.cnblogs.com/xyishere/p/13656754.html
Copyright © 2011-2022 走看看