《Javascript 高级程序设计(第三版)》通读后的总结笔记(五)

215 阅读1分钟

5 函数

  • 返回值:函数执行的结果
    • 使用return来设置函数的返回值,它可以被一个变量所接收
    • return 后的代码不会执行,一旦执行到return语句时,函数将会立刻退出
    • return 后可跟任意类型的值,基本数据类型或对象
    • 如果return后不跟值,或者是不写return,则函数默认返回undefined
  • 参数:
    • 形参:function(1, 2)
    • 实参:function(a, b)
  • 作用域:一个变量的作用范围
    • 全局作用域
      • 全局作用域在打开页面时创建,在页面关闭时销毁
      • 全局作用域中有一个全局对象window,window对象由浏览器提供
      • 在全局作用域中创建的变量和函数可以在页面的任意位置访问
        • 尽量不要在全局中创建变量
    • 函数作用域
      • 每次调用函数都会创建一个新的函数作用域
      • 函数作用域在函数执行时创建,在函数执行结束时销毁
      • 在函数作用域中创建的变量,不能在全局中访问
      • 当在函数作用域中使用一个变量时,它会先在自身作用域中寻找,如果找到了则直接使用,如果没有找到则到上一级作用域中寻找
  • 函数的声明提前:和变量的声明提前一样,在全局作用域中,使用函数声明function创建的函数,会被浏览器预先把声明调到前面去,即预解析。