12-函数进阶

复习知识点  函数

1、声明函数

  • 一次声明,多次使用的语句块;
  • 参数:形参,实参
  • 返回值: 函数运行的结果

2、函数声明提升   通过 function 声明的函数,在声明语句之前就可以直接调用

3、匿名函数   即没有名称的函数  需要用小括号包起来 如果需要立即执行可以在结尾加括号

4、函数表达式  即定义一个变量 = 函数 使用前必须赋值

5、方法  属于某一个对象的函数

设置默认参数值

    //设置函数默认值
    function fun(n=2,m=2){
        return n + m;
    }
    let result = fun(5,5);
    console.log(result);

        若无实参输入则按照默认值nm为2运行,若有实参则用实参进行计算。

立即执行函数

    // 立即执行函数
    (function(){
        console.log("hello")
    })()

        用小括号包围函数,并且在结尾处加一个括号,立即调用此函数,只能使用一次,且外部不可访问内部参数。

闭包

        声明一个函数中的函数叫作闭包函数。

 闭包:内部函数总是可访问其所在的外部函数的参数和变量,即使在其外部函数被返回之后

(内部函数被返回,外部函数也不会被销毁)。

    let str = "hello"
    function fun1(){
        let str = "world";
        let num = 21
        function fun2(){
            console.log(num)
            console.log(str)
        }
        fun2();
    }
    fun1();

代码封装       ES5模块化语法

内部函数运行结果return给外部函数,并设为立即执行函数。

// 闭包  利用闭包实现封装
        function fun1(){
            let m = 2;
            let n = 3;
        function fun2(){
            return m + n;
        }
        return fun2();
    }
    const f = fun1();
    const result = f;
    console.log(result);

箭头函数  (重点)

        箭头函数总是函数表达式;并不存在箭头函数声明。箭头函数支持普通函数参数的所有功能,包括默认值、解构、rest 参数,等等。

// 普通写法
const a =function(a,b){
    return  b*a;
};
// 箭头函数 
const a = (a,b) => a*b;
// 单一元素下的箭头函数
const a = x => x*x;

箭头函数下的this

        普通函数的this指向调用该函数的对象,而箭头函数则在哪定义的,this就指向谁

    // 箭头函数的this
    const cat = {
        name:"miao",
        sayName(){
            let a = this;
                setInterval(()=>{
                console.log(this.name)
            },1000)
        }
    }
    cat.sayName();

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值