浅学JavaScript08

本文深入探讨JavaScript函数的高级特性,包括声明定义、匿名函数、立即执行、函数提升、形参实参、默认参数、箭头函数、递归调用、回调函数、展开语法、标签函数、this的用法、apply/call/bind的应用。通过实例解析,帮助读者掌握JavaScript函数的精髓。
摘要由CSDN通过智能技术生成

世界不止0和1 还有...

目录​​​​​​​

函数进阶

        基础知识

                1.声明定义

                2.匿名函数

                3.立即执行

                4.函数提升

                5.形参实参

                6.默认参数

                7.函数参数

                8.arguments

                9.箭头函数

                10.递归调用

                11.回调函数

                12.展开语法

                13.标签函数

        this

                1.函数调用

                2.方法调用

                3.箭头函数

        apply/call/bind            

                1.原理分析

                2.apply/call

                3.bind


函数进阶

        基础知识

                        函数是将复用的代码块封装起来的模块,在JS中函数还有其他语言所不具有的特性,接下来我们会详细掌握使用技巧。

                1.声明定义

                        在JS中函数也是对象函数是Function类的创建的实例,下面的例子可以方便理解函数是对象。

                        

                        标准语法是使用函数声明来定义函数

                        

                        对象字面量属性函数简写

                         

                        全局函数会声明在window对象中,这不正确建议使用后面章节的模块处理

                        

                        当我们定义了 screenX 函数后就覆盖了window.screenX方法

                         

                        使用let/const时不会压入window

                          

                2.匿名函数

                        函数是对象所以可以通过赋值来指向到函数对象的指针,当然指针也可以传递给其他变量,注意后面要以;结束。下面使用函数表达式将 匿名函数 赋值给变量

                        

                        标准声明的函数优先级更高,解析器会优先提取函数并放在代码树顶端,所以标准声明函数位置不限制,所以下面的代码可以正常执行。

                         

                        标准声明优先级高于赋值声明

                         

                        程序中使用匿名函数的情况非常普遍

                         

                3.立即执行

                        立即执行函数指函数定义时立即执行

                                可以用来定义私有作用域防止污染全局作用域

                        

                        使用 let/const 有块作用域特性,所以使用以下方式也可以产生私有作用域

                        

                4.函数提升

                        函数也会提升到前面,优先级行于var变量提高

                        

                        变量函数定义不会被提升

                          

                5.形参实参

                        形参是在函数声明时设置的参数,实参指在调用函数时传递的值。

                                形参数量大于实参时,没有传参的形参值为 undefined

                                实参数量大于形参时,多于的实参将忽略并不会报错

                                

                        当没传递参数时值为undefined

                          

                6.默认参数

                        下面通过计算年平均销售额来体验以往默认参数的处理方式

                        

                        使用新版本默认参数方式如下

                         

                        下面通过排序来体验新版默认参数的处理方式,下例中当不传递 type 参数时使用默认值 asc。

                        

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值