JavaScript踩坑笔记02---函数、函数提升

JavaScript踩坑笔记02---函数、函数提升

函数:

函数的作用就是帮助我们执行代码,程序通过函数的调用,来执行代码。
JavaScript中,函数通过关键字function声明。
函数声明有两种方式,一种是函数本身的声明方式,还有一种是函数作为字面量的声明方式。
举例说明。

// 1.函数式声明
function sum1(n1, n2) {
	// n1,n2为函数的参数
	// return为函数的返回值
	// 参数和返回值可有可无,根据你的需求来定
	return n1 + n2;
}

// 2.函数表达式,又叫函数字面量
var sum2 = function (n1, n2) {
	return n1 + n2;
};

console.log(sum1(1, 2)); // 3
console.log(sum2(1, 2)); // 3

二者都函数的声明方式,都可以被正常的调用,但是二者还是有一些区别的。
函数表达式定义的函数会被当做一个变量,而变量是可以作为参数传递的,也就是说函数也可以作为参数传递

函数提升:

还有一个不同,我们举例说明。

// 在定义函数fn1前,调用函数fn1
fn1(); // 函数式声明

function fn1() {
	console.log("函数式声明");
}

// 在定义函数fn2前,调用函数fn2
fn2(); // TypeError: fn2 is not a function

var fn2 = function () {
	console.log("函数表达式声明");
};

以上例子可以说明,函数式声明的函数会在程序加载的时候就被JavaScript解析器解析,并且提升到代码顶端,所以可以在声明之前调用,这就是函数提升。
而函数表达式声明会被当做一个变量,只有当使用到这个变量时,才会被javaScript解析器解析,在解析器没有解析这个函数之前调用它,就会报错。


个人学习总结,欢迎批评指正

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值