JS:函数的概念、执行、分类、方法、出入口、形参实参应用,事件的分类-第四天

# 一、复习

1、循环的意义

    - 减少代码冗余,减少文件体积

2、循环的三要素

    - 计数器,执行条件计数器的改变,

3、死循环

    - 无法通过自身结束循环

4、循环语句

5、循环的应用

    - 需要重复执行某些代码的场景

# 三、函数

1、概念:实现了某个功能的一段代码的打包,可以通过程序进行控制:由一堆代码组成,实现了某个功能,可以直接被调用或者事件控制的代码段

    - 内置功能

    - 非内置功能

2、函数的特点:

    - 忽略细节

    - 重复使用

    - 选择使用

3、创建函数 - 创建打包的容器

    - 声明式:

        - 声明函数的关键字function

        - function 函数名(参数列表){组成功能的代码,函数的执行语句}

    - 赋值式:

        - 利用变量进行赋值

            - var 变量名 = function(){}

4、函数的执行 - 使用这个容器内的功能

    - 直接执行

        - 名字()

            - 注意:任何情况下,只要  名字()  都会作为函数执行

    - 事件执行(控制):`事件源,on事件名 = 函数名`

        - btn.onclick = printTable

5、根据写法,函数的分类

    - 有名函数:function fn(){}

        - 正常函数,能直接使用

    - 无名函数:function (){}

        - 非正常函数,不能直接使用,只能作为*值*使用

            1、作为赋值式创建函数

                var abc = function(){}

            2、作为事件处理函数

                btn.onclick = function(){}

            3、作为另一个函数的实参

                fn(function(){})

            4、作为另一个函数的返回值

                function fun(){ return function(){}}

            5、作为匿名函数的主体

                (function(){})()

    - 匿名函数:(function(){})()

        - 立即执行

        - 利用匿名函数生成独立的作用域

        - 匿名函数前后要加分号;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

    - 箭头函数:。。。

6、事件

    - 事件:行为、动作、交互的体现,需要通过某些动作(行为)触发,触发之后,执行对应的功能的过程

    - 事件分类

        - 鼠标类

            - 左键单击:click

            - 右键单击:contentmenu

            - 左键双击:dblclick

            - 按下:mousedown

            - 抬起:mouseup

            - 移动:mousemove

            - 进入:mouseover/mouseenter

            - 出来:mouseout / mouseleave

        - 键盘类

            - 点击:keypress

            - 按下:keydown

            - 抬起:keyup

        - 表单类

            - 获取焦点:focus

            - 失去焦点:blur

            - 输入:input

            - 内容改变: change

            - 提交:submit

            - 重置:reset

        - 浏览器

            - 加载完成:load

            - 滚动:scroll

            - 改变尺寸:resize

    - 主题:测试事件的执行

        - 确定事件源

        - 找准事件源

        - 行为要对应

7、函数的参数 - 入口

    - 参数:在函数执行时,可以动态的像函数内部传输数据,函数内根据传入数据的不同,选择执行不同的功能

    - 分类

        - 函数执行时,发送的参数:实参

        - 函数定义时,接收的参数:形参

        - 实参发送给形参,形参保存了实参,实参赋值给了形参,类似于变量的赋值

    - 参数类型:任意类型

    - 参数的个数:任意个

        - 数量一致:从左到右一一对应

        - 形参多:多出来的形参为undefined

        - 实参多:多出来的实参,没有形参接收,可以找arguments

8、arguments

    <!-- - 当函数的实参比形参多时,形参并没有很好的接收实参,函数内部默认的对象(arguments),专门用来接收所有的实参 -->

    - 函数内部内置的数组对象,用来接收当前所有函数的实参!和形参没有关系

    - arguments是一个数组

        - argyments.length:数组的长度,实参的个数

        - 解析arguments每一个数据:配合索引的概念:0~len-1

        - arguments[n]

9、参数应用

    - 定义功能时,提前将可能变化的数据,处理成形参

    - 将来执行该功能时,将数据通过形参传如入函数,执行对应的功能


 

    - 当函数的参数个数确定时,使用具体的形参接收即可

    - 当函数参数个数不确定时,可以使用arguments获取所有的实参

10、函数的出口 - 出口

    - 关键字:return 要返回的数据或变量

        - return将函数执行结果,返回到执行语句上

    - 如果一个函数没有return,那么它返回的数值是undefined

    - 返回值的类型:任意类型

    - 返回值的个数: 一个函数只能有一个返回值

    - return的功能

        - 可以让函数有返回值

        - 立即结束函数

    - 返回值的应用场景

        - 功能函数:可以不需要返回值

        - 数据函数:必须要有返回值

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值