JS函数的应用

JS函数的应用

了解函数
函数是我们的一个数据类型, 和数学的一次函数之类的玩意没有关系
函数是我们接触的第一个复杂数据类型

函数的创建

	Ps:在声明函数时,函数内部代码不会自行执行,只有被调用时,代码才会执行。
  1. 声明式函数
    function name(){}
    name是给函数自定义的名字(命名规则和规范同变量名)
    ()存参数
    {} 存代码

  2. 赋值式函数
    语法:var name = funciton (){}
    var :定义变量的关键字
    name: 给函数自定义的名字(命名规则和规范同变量名)
    =:赋值
    funciton:表示一个函数
    ()存参数
    {}存代码
    在这里插入图片描述

函数的调用

1.直接调用
当你定义好一个函数以后
如果你想让它内部执行
直接写 -> 函数名()
函数名:你要让哪一个空间里面的代码执行
():调用的意思
在这里插入图片描述注意: 定义完一个函数以后,如果没有函数调用,那么写在{}里的代码没有意义,只有调用,才会执行。

调用上的差别

虽然两种定义方式的调用都是一样的,但还是有一些区别的
声明函数: 调用可以在定义之前或者定义之后
在这里插入图片描述

函数的参数(重点)

-1 . 形参

  • 就是在函数内部可以使用的变量,在函数外部不可使用
  • 每写一个单词,就相当于在函数内部定义一个可以使用的变量(遵循变量名的命名规则和命名规范)
  • 多个单词之间用,隔开
  • 在这里插入图片描述
  • 如果只有形参的话,那么在函数内部使用的值的变量是没有值的,也就是undefined
  • 行参的值是在函数调用的时候由实参决定的。
  1. 实参
    在函数调用的时候给形参赋值的
    在调用的时候是给一个实际的内容
    在这里插入图片描述

参数的个数关系

  • 形参比实参少

  • 因为是按照顺序一一对应的。

  • 形参少就会拿不到实参给的值,所以在函数内部就没法用到这个值

在这里插入图片描述

行参比实参多

  • 因为是按照顺序一一对应的

  • 所以多出来的行参就是没有值的,就是 undefined

  • 在这里插入图片描述

函数的return(重点)

  • return 返回的意思,其实就是给函数一个 返回值终断函数

终断函数

  • 当我开始执行函数以后,函数内部的代码就会从上到下的依次执行

  • 必须要等到函数内的代码执行完毕

  • return 关键字就是可以在函数中间的位置停掉,让后面的代码不在继续执行

  • 在这里插入图片描述

返回值

  • 函数调用本身也是一个表达式,表达式就应该有一个值出现

  • 现在的函数执行完毕之后,是不会有结果出现的
    在这里插入图片描述

  • return 关键字就是可以给函数执行完毕一个结果

  • 在这里插入图片描述

  • 我们可以在函数内部使用 return 关键把任何内容当作这个函数运行后的结果

函数的优点

  • 函数就是对一段代码的封装,在我们想调用的时候调用
  • 函数的几个优点
    1. 封装代码,使代码更加简洁
    2. 复用,在重复功能的时候直接调用就好
    3. 代码执行时机,随时可以在我们想要执行的时候执行

函数argments

函数内部的一个特殊的变量, arguments

    在每一个函数内部, 都有一个天生的变量
    不需要我们取定义, 直接就能拿来使用
    这个变量叫做 arguments
    表示所有实参的集合

详解 arguments

   会把所有的实参按照从左到右的顺序依次排好
    给每一个实参一个编号(索引 / 下标)
    这个编号(索引 / 下标) 是从 0 开始的, 依次递增
    当你需要获取到这里面的某一个的时候
    你只要写 arguments[编号] 就能得到某一个准确的值

arguments.length

      表示 arguments 这个集合的长度, 也就是里面有多少个数据
      值是一个 number 数据类型的数字
      如果你想得到这个属性就写 arguments.length

  使用循环遍历整个 arguments 获取到每一个数据
    因为 arguments 的索引(下标) 是按照从 0 开始依次叠加的顺序
    我们的循环刚好也可以给我提供一组有规律的数字
    所以我们可以使用循环的方式来遍历 arguments

  循环遍历的时候为什么要小于 length
    当 length === 5 的时候, 我们要的索引数字是 0 1 2 3 4
      for (var i = 0; i < 5; i++) {} 得到的 i 分别时 0 1 2 3 4
    当 length === 7 的时候, 我们要的索引数字是 0 1 2 3 4 5 6
      for (var i = 0; i < 7; i++) {} 得到的 i 分别是 0 1 2 3 4 5 6

  什么时候使用 arguments 什么时候使用形参
    因为函数是我们提前定义好的, 为了更好的书写代码, 为了以后多次调用
    当我们定义函数的时候, 我就能确定以后我使用的时候的实参的个数
      我们推荐使用形参的方式来获取, 因为方便
    当我们定义函数的时候, 我不能确定以后我使用的时候的实参的个数
      我们推荐使用 arguments 的形式来获取, 因为灵活

这里是引用

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值