前端基础10:匿名函数

252 阅读2分钟

function

  • 函数类型的作用:
- 1.具有封装性(防止冲突和覆盖)
- 2.减少冗余代码,把实现相同功能的代码都写在一个函数里,等下次需要实现这个功能时,只需要执行这个函数即可
  • 函数的定义:function 函数名(){函数体的内容(实现一个函数具体的逻辑)
  • 函数定义的步骤:
    • 1.开辟一个堆内存,假设引用地址FFF000
    • 2.将函数体的内容以字符串形式存在堆内存里面
    • 3.将引用地址FFF000赋值给函数名fn,函数名fn就代表了整个函数体 可以打印出来瞧瞧
    • 函数的执行:函数名()
    • 函数的执行步骤: - 1.开辟一个封闭的内存空间(私有作用域) - 2.将函数体内的字符串转换成JS代码,代码从上往下执行
    • 函数执行时,每次开辟的内存空间相互之间没有任何关系
    • 函数的参数:通过传参实现功能的差异化
    function sum(a, b){
        var total = null;
        total = Math.sqrt(Math.pow(a,2) + Math.pow(b,2));
        return total;   //返回值   遇到return,函数终止运行
    }
    /*函数外面无法拿到函数内部的值
     通过return将函数内部的值暴露给外界,函数运行完后会自动的运行返回值*/
    var total = sum(7, 8);  //1.函数运行 2.携带返回值
    console.log(total);    //若没写return/写return没写值,运行后返回值为undefined
  • 形参适合参数个数确定的情况 - 若实参个数不确定,就不能用形参来接受实参,而是用arguments来接受实参
  • arguments不是一个数组对象,arguments 实参个数,arguments[0]第一个实参,arguments[arguments.length - 1]最后一个实参

匿名函数

因为()有粘性,()之前需要加分隔符; ~ !

    !function () {
        
    }() //匿名函数的执行,闭包的一种
  • 匿名方法执行事件时是点击时执行的
    a.onclick = function () { //匿名方法的执行是用户点击时执行的,不需要手动执行
        alert('a');
    }