JavaScript:)函数

函数概念

  • 对于js来说,函数就是把任意一段代码放在{ }里面
  • 想执行这段代码,直接执行这个{ }里面的代码
    1 函数有两个阶段
  • 函数定义阶段
  • 两种定义方式 声明式赋值式
    1.1 声明式:使用function 这个关键字来声明一个函数
    1.2语法:function fn(){
    要执行的一段代码
    }
    function:声明函数的关键字,表示接下来就是一个函数了
    fn:函数的名字,自己定义,遵循变量名的命名规则和命名规范
    ( ):放行参的位置
    { }:放要执行的代码的位置

2.1赋值式,var定义一个变量,把一个函数当做值直接赋值给这个变量
2.2 语法:var arr=function( ){
要执行的一段代码
}

2函数调用阶段

  • 让{ }里的代码执行一下
  • 让函数执行

1.1 声明式函数 function fn(){
console.log(‘我是fn函数’ )
}
调用函数 fn()
赋值式函数 var arr=function(){
console.log(‘我是arr函数’)
}
调用函数 arr()

定义完function 以后,如果没有函数调用,那么写在{ } 里的代码不会执行,没有意义,调用function才会执行

1.2声明式函数的调用可以在 定义之前或者定义之后
1.3赋值式函数的调用只能在定义之后

function 的参数

  • 参数分为 行参实参
    1.1声明式 function fn(行参){
    要执行的代码
    }
    fn(实参)
    赋值式函数var arr=function(行参){
    要执行的代码
    }
    arr(实参)

1.2行参:在函数内部可使用的变量,在函数外部不能使用
就相当于在函数内部定义了一个可以使用的变量
多个单词以 , 分隔
只有行参,在函数内部使用的变量没有值,undefined
行参的值是在函数调用时由实参决定
1.3实参:在函数调用时给行参赋值的
函数内部的行参的值,由函数调用时传递的实参决定
多个参数时,按照顺序一一对应

function的return

  • 给函数一个返回值终断函数
    1.1终断函数:

  • 当执行代码时,函数内部的代码从上至下依次执行

  • 要等到函数内代码执行完毕

  • return 关键字可以从函数中间位置停掉,让后面代码不再继续执行
    1.2 返回值

  • 函数调用本身也是一个表达式,

  • return 可以给函数一个执行完毕的结果

  • 在函数内部使用return 把任何内容当做这个函数运行的结果
    function 的优点

  • 对一段代码的封装,在我们想调用时调用

  • 封装代码,可以使代码简洁

  • 在重复功能时直接调用

  • 随时在想要执行时执行

预解析

在所有代码执行之前进行解释,预解释

  • 声明式函数
    在内存中,先声明有一个变量名是函数名,这个名字代表的是一个函数

  • var关键字
    在内存中先声明有一个变量名

  • 赋值是函数会按照var关键字的规则进行预解析

作用域

  • 一个变量可以生效的范围
  • 变量的使用范围就是作用域

全局作用域

  • 全局作用域是最大的作用域
  • 全局作用域中定义的变量在任何地方都可使用
  • 页面打开时,浏览器会自动给我们生成一个全局作用域 window
  • 页面关闭才销毁

局部作用域

  • 在全局作用域下开辟出一个小一些的作用域
  • 只能在局部作用域内部使用
  • 在 js 中只有函数能生成一个局部作用域
  • 每一个函数都是一个局部作用域

变量使用规则

  • 变量使用规则分为两种,访问规则赋值规则

1 访问规则

  • 想获取一个变量值的时候

  • 规则:
    首先在自己作用域内部查找,有就用
    没有,就去上一级作用域查找,有就用
    没有,就继续上一级作用域查找,依次类推
    一直到全局作用域都木有变量,直接报错

  • 变量的访问规则 也叫做作用域的查找机制

  • 作用域查找只能向上找

2 赋值规则

  • 先找到变量,在赋值
  • 规则:
    在自己作用域查找,有就赋值
    没有去上一级作用域查找,有就赋值
    在没有再去上一级作用域查找,有就赋值
    一直到全局作用域都木有,就把变量定义为全局变量,在给它赋值
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值