扫码关注官方订阅号
`alert(sum(10,10));var sum=function(num1,num2){
return num1+num2;
};`为什么报错,不是有变量提升吗
函数表达式不会提升。
看一遍《javascript高级程序设计》吧。
声明和表达式是不一样的,声明的话不光定义会提前,赋值也会提前赋好,而表达式不会,举个栗子:
a(); function a(){}; //等同于 var a = function(){}; a(); ///////对于表达式有 a(); var a = function(){}; //等同于 var a; a(); a = function(){}; //简单来讲就是表达式的赋值必须要等程序运行到相关行的时候才会进行
同楼上,你的函数创建方式是函数字面量形式,改成
alert(sum(10,10)); function sum(num1,num2){ return num1+num2; }
就行了
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
函数表达式不会提升。
看一遍《javascript高级程序设计》吧。
声明和表达式是不一样的,声明的话不光定义会提前,赋值也会提前赋好,而表达式不会,举个栗子:
同楼上,你的函数创建方式是函数字面量形式,改成
就行了