JsDay6

一、函数

1.函数的概念

  • 空调:由遥控器或开关控制,可以实现调解空气的功能的家用电器

  • 函数:由用户或自身控制,可以实现某个功能的 代码段(很多代码)

  • 家用电器(空调)的特点:

    • 忽略细节
    • 重复使用
    • 选择使用
  • 函数的特点:

    • 忽略细节:在使用过程中,只需要关注其实现的功能,而不需要关注其内部原理
    • 重复使用:多次使用
    • 选择使用:按需使用

2.创建函数

  • 函数从哪来
    • 内置(系统提供,公司发的)

      • parseInt()
      • parseFloat()
      • alert()
    • 自定义(自己写,自己给自己做)

      • 声明式创建函数
        • 需要配合关键字:function
        • 语法:
              function 函数名(){}
          
      • 赋值式创建函数
        • 需要配合关键字:varfunction
              var 变量名 = function(){}
          
      • 函数其实就是一个变量,只不过内部存的是一段代码,这段代码还被一个容器包裹了

3.执行函数

  • 函数名()
    • 只要函数名后面有小括号,必然会立即执行当前函数
    • 固定语法
  • 通过事件执行
    • 执行无名函数
        元素.事件 = function(){}
    
    • 执行有名函数
        元素.事件 = 函数名
    
    • 无名函数配合有名函数,使用较多
        元素.事件 = function(){
            函数|变量名()
        }
    

4.函数分类

  • 根据写法分类
    • 有名函数:

      • 正常函数
      • 使用频率最多的函数
      • 声明式和赋值式创建的函数
          function 函数名(){}
          var 变量名 = function(){}
      
      • 执行
        • 常规执行:函数名或变量名()
    • 无名函数:

      • 非正常函数
      • 没有名字
          function(){}
      
      • 不允许直接存在于代码空间中,否则会报错
      • 使用场景:
        1. 作为变量的存在(赋值式创建函数时的
              var 变量名 = function(){}
          
          • 执行:函数名|变量名()
        2. 作为事件处理函数执行
          btn.onclick = function(){
              // 当事件被触发时要执行的内容...
          }
          
    • 匿名函数:

5.函数的参数

  • 什么是参数

    • 根据用户传入不同的参数,选择执行函数中不同的功能
  • 参数的分类:

    • 发:实参:函数执行时的参数
    • 收:形参:函数定义时的参数
    • 实参和形参的关系,赋值的关系,形参相当于变量,实参相当于值,一对一
  • 数量对应关系

    • 参数可以有很多个,语法上没有数量限制,但是行业有习惯,自定义函数,如非特殊需要,尽量不要超过3个
    • 实参和形参数量一致:
      • 按照顺序,一一对应
    • 实参多:
      • 没有形参接收,通过形参找不到
      • 在函数内部有个神秘的空间(arguments),这个空间会将所有的实参全部保存,不论有没有被接收
      • arguments是个对象类型的数据(类数组的数据)
        • 长度(个数),表示接收到了几个实参
          • arguments.length
        • 索引(序号,编号),表示数组内部的数据位置,索引从0开始
          • arguments[索引]
    • 形参多:
      • 多出来的形参是undefined
      • 形参其实就是一个变量,实参是赋值,如果实参不够,表示没有赋值,undefined

6.事件的分类

  • 人机交互
    输入和输出
    输入设备:鼠标,键盘,…
    输出设备:显示器,音响,…

    • 事件按照输入设备分:

      • 鼠标类:
        单击:click
        双击:dblclick
        按下:mousedown
        抬起:mouseup
        移动:mousemove
        进入:mouseover / mouseenter
        离开:mouseout / mouseleave
        右键:contextmenu

      • 键盘类:
        按下:keydown
        抬起:keyup
        按下并抬起:keypress

    • 网页的特色事件

      • 浏览器类:
        加载:load
        滚动:scroll
        改变大小:resize

      • 表单类:
        获取焦点:focus
        失去焦点:blur
        输入:input
        内容改变:change
        提交事件:submit
        重置事件:reset

    • 所有事件的绑定方式都是一致的
      目前学习了一种:on绑定,赋值式绑定
      元素.on事件名 = function(){}

1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值