函数的概念
- 什么是函数?
- 首先明确一点,和我们数学中的函数是两个概念
- 在 JS 中,函数可以理解为将一段在程序中多次出现的代码封装起来的盒子,以便在多个地方调用执行
- 换句话说:函数就是一个内部封装了部分代码的盒子,可以在多个位置被调用
- 函数的使用
函数的定义
function fn() {
}
var fn = function () {
}
函数的调用
function fn1() {
}
var fn2 = function () {
}
fn1()
fn2()
声明式与赋值式的区别
fn1()
function fn1(){
}
fn1()
fn2()
var fn2 = function () {
}
fn2()
函数的参数
- 参数是什么?
- 如果没有参数,那么函数的执行功能是固定的,写好函数后内部内容将不会变
- 比如:函数内部的代码为 1 + 1,那么始终执行时始终都是 1 + 1,如果此时想要计算 1 + 2 的值,需要重新封装一个 1+2 的函数
- 参数在哪里?如何使用
- 书写函数时有一个 () 内部就是书写参数的,函数分为两种,形参---实参
- 形参和实参的区别
- 形参:在函数声明时 function 后边的()内书写,每写一个参数,就相当于在函数内部创建一个变量,其值为函数调用时传递的值,只能在函数内部使用,不能在外部使用
- 实参:顾名思义,实际的参数,也就是函数在调用时传递的参数
function num () {
console.log(1 + 1)
}
num()
function num (a, b) {
console.log(a + b)
}
num(1, 1)
num(1, 2)
function num1(a, b, c, d) {
console.log(a,b,c,d)
}
num1(1, 2, 3, 4)
num1(1, 2, 4)
num1(4)
function num2 (a) {
console.log(a)
}
num2(1, 2)
num2(1)
函数的返回值
- 返回值是什么?有什么作用
- 函数内部默认有一个 return 他的值就是函数的返回值,如果函数内部不写 return 那么函数默认在函数体内部最底部返回一个 undefined
- 如果不想返回 undefined 需要手动在函数内部写上 return 并且跟上需要返回的值
- 可以中断函数(后续通过代码演示)
function num (a, b) {
a+b
}
var ab = num(1,2)
console.log(ab)
function num (a, b) {
console.log('函数内部执行的 a + b =',a+b)
}
var ab = num(1,2)
console.log('函数外部执行的 a + b =',ab)
函数的优点
- 函数其实就是将一段需要多次调用的代码抽离出来封装到一个盒子内部,方便在多个地方调用时简单化代码
- 抽离公共代码,项目代码整体更加简洁
- 方便(复用),在需要的地方直接 函数名 + 小括号 调用即可
函数的预解析
- 什么是预解析
- 在代码运行前,先全部分析一遍代码,这个行为叫做预解析(预解释)
- 预解析的内容
fn()
console.log(a)
function fn() {
console.log(100)
}
var a = 100
function fn() {
console.log(100)
}
var a
fn()
console.log(a)
a = 100