作用域与变量的读写规则

一、函数

6.函数的返回值

  • 返回值概念
    • 函数自身的处理数据或执行结果,需要被二次使用或其他程序调用时,需要将数据返回出来
  • 如何拿到返回值
    • 关键字:return 要返回的数据
  • return的功能
    • 可以让函数返回指定的
    • 可以立即结束当前函数
      • 一个函数中可以写无数个,但是只能执行一次return,一次只能返回一个数据,不允许返回多个数据
  • 返回到哪
    • 返回到函数的执行语句
      • 函数名(),既是在执行函数,也是在拿返回值
  • 注意
    • 一个函数如果没有return,那么返回的是undefined;如果有return,那么返回值就是return后面的值
  • 可以返回哪些数据
    • 所有数据
      • 当返回函数时,形成了闭包(后期概念)
  • 什么时候需要返回值?
    • 功能性函数(打印表格,改颜色)
      • 可以有,但是没有必要有返回值
    • 处理数据的函数(补零,计算器,计算圆的面积)
      • 一般都有,返回数据

二、作用域

  • 谁作用的哪个区域

    • 谁:数据(变量)
    • 哪个:如何划分,函数就是一个区域
  • 全局

    • 不属于任何一个函数
    • 全局作用域中的变量,叫全局变量
    • 全局作用域中的函数,叫全局函数
    • 生命周期:一直存在
    • 耗性能,但是方便
      • 少用全局
  • 局部

    • 任何一个函数内部都是局部作用域

    • 局部作用域中的变量,叫局部变量

    • 局部作用域中的函数,叫局部函数

    • 生命周期:朝生暮死

    • 节省内存,不方便

    • 函数的参数(形参):是当前函数的局部变量

  • 匿名函数

    • 利用匿名函数解决全局耗性能,局部不方便的问题
    • (function(){})()

三、变量的读写规则

  • 当全局和局部的变量名重复时

  • 读的规则:

    • 向上级作用域查找,找到了,就使用,同时,停止查找;找到顶级作用域,都没有,报错
  • 写(设置,赋值)的规则:

    • 向上级作用域查找,找到了,就写入,同时,停止查找;找到顶级作用域,都没有,会默认在顶级作用域声明这个变量,然后使用
  • 注意:声明变量时,必须加声明关键字,不加声明关键字,可能能执行,但是不规范

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值