函数

1.函数的关键字  function

复习

var 是js的关键字,用于表示声明变量,声明是在内存模块完成,定义(=)是执行模块完成。

var 客园在内存模块提前(js代码执行前)完成所以有变量提升这个功能。

function 也是js1的关键字,用于声明和定义函数的,声明和定义都在内存模块完成。

function 也是内存模块提前完成,所以有函数提升这个功能。

变量提升和函数提升 都叫预解释都是浏览器的。

 

2,函数的定义:函数具有一定的功能的代码块。

                          函数是通过function 定义的,function后跟的是函数名。

结构语法

             function fn (){}

通过上图我们客园发现,内存模块只存 var 的变量名。而存function整个代码块,因为声明和定义同时完成。

函数结构的注意。

函数的定义  通过 function 定义 function fn(){}

                   函数定义的四种方式

                          1.声明式定义 function fn(){} 

                           2.表达式定义   var an=function (){}  匿名函数

                           3.自调用

                               定义和调用同时完成

                             4.通过 对象的形式  var as=new function(){}

函数的调用 函数名()   fn()

                 函数最大的优势  会形成一个独立的模块,可以按需使用,可以重复使用。

按需使用 可以提升性能   重复使用 减少代码冗余。

函数调用的过程,

函数执行时形成一个自己的私有域/。最大的作用是window (全局作用域)

然后执行函数里的代码块

案例分析

分析图

 

 

            作用域链:函数内部的变量被使用时,首先会在自己的作用域下查找是否有这个变量,有就之间使用,没有就会向他的父级查找,父级有就用父级的,父级没有就会以此继续向上查找指定window 为止,window有就使用没有就是 is not defined。这种查找机制我们叫作用域链。

 分析图

 

 

函数归属谁 跟它在那调用没关系,而是在那定义有关。

break 和 continue 运算

break 终止当前程序

continue 跳出当前的程序,执行下一个

break 和continue 只能在循环语句中,如果条件语句下使用break 只能使用retrn。

return 返回值

每个函数都有一个返回值,如果函数人为return了,返回声明就是什么。

如果没有人返回,结果就是undefiend 并且 return 后面的代码不在执行。

 

 

 

 

 

 

 

 

 

 

 

 

内容来源于网络如有侵权请私信删除
你还没有登录,请先登录注册
  • 还没有人评论,欢迎说说您的想法!

相关课程