zoukankan      html  css  js  c++  java
  • 函数声明与表达式

    将脚本编写为函数可避免页面载入时直接执行该脚本

    函数中有代码,这些代码只能被事件激活或在函数运行时才会执行

    变量声明

    函数中声明的变量,叫做局部变量,该变量只能在函数中访问,退出函数后该变量就会被撤销;这意味着我们可以在不同的函数中声明名称相同的变量

    局部变量声明只有2种方式:var表达式、传参。代码如下所示

    var fun = function (a)
    {
    	var b = 1;
    };
    

    函数中的a、b都是局部变量

    函数声明

    这种方法会在执行前被解析,它可以存在于该函数运行代码的前后任意位置。代码如下所示

    function fun ()
    {
    	...
    };
    fun();

    fun();
    function fun ()
    {
    	...
    };
    

    运行结果都为正常

    函数赋值表达式

    这种方法是把匿名函数赋值给变量,因为赋值语句只在运行时执行,完成对该变量的解析,所以它必须存在于该函数运行代码之前。先看如下代码所示

    var fun = function ()
    {
    	...
    };
    fun();
    

    运行结果为正常;在赋值语句之前,该变量的值都缺省为undefined。代码如下所示

    fun();
    var fun = function ()
    {
    	...
    };
    

    运行结果为TypeError: fun is not a function

    命名函数赋值表达式

    一个特殊情况是将命名函数赋值给一个变量

    var fun = function set ()
    {
    	set();
    };
    set();

    运行结果为前者正常,后者失败;命名函数被赋值给了一个变量,于是该函数声明外不可见,在该函数内部却依然可见

    JavaScript语言中的命名处理规则决定了函数名在函数内部总是可见

    函数是JavaScript语言中的一等对象,可以像其它值一样被传递,如把匿名函数作为回调函数传递到异步函数中
  • 相关阅读:
    TensorFlow入门:debug方法
    Firefox 隐藏提示:正在安装组件,以便播放此页面的音频或视频
    CentOS 6.5挂载windows NTFS硬盘
    Linux中执行shell脚本
    CentOS opera 浏览器
    CentOS 更新为网易yum源
    Centos下替换yum源为阿里云源
    CentOS常用基础命令大全
    Linux CentOS删除或重命名文件夹和文件的办法
    给Centos7装上Chromium
  • 原文地址:https://www.cnblogs.com/johnl/p/4849678.html
Copyright © 2011-2022 走看看