普通函数定义方式

发布于 2023-08-24 00:09:28 字数 900 浏览 29 评论 0

区别

1.函数声明必须包含名称,函数表达式可以省略名称。
2.函数声明有位置限制,不能出现在条件语句、循环语句或其他语句中,而函数表达式没有位置限制,可以出现在语句中实现动态编程。
3.函数声明会先于函数表达式被提升至作用域的顶部,因此用函数声明创建的函数可以在声明之前被调用,而函数表达式必须在表达式之后才能被调用

函数声明式

可以变量提前

function a(){}
typeof a; // function

typeof b; // function
function b(){}

函数表达式

不能变量提前 -> undefined

var c = function (){};
typeof c; // function

typeof d; // undefined
var d = function (){};

注意表达式右边为 undefined

var e = function f(){};
typeof e; // "function"
typeof f; // "undefined"

函数构造式

不能变量提前 -> undefined

var  test = new Function('name','alert("hello,"+name)');     
//最末尾的是函数体,其前面的都是参数
//函数调用
test('world');
typeof fun1; //undefined
var  fun1 = new Function('name','alert("hello,"+name)');   

var  fun2 = new Function('name','alert("hello,"+name)');   
typeof fun2; //function

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

关于作者

猫弦

暂无简介

0 文章
0 评论
24 人气
更多

推荐作者

qq_E2Iff7

文章 0 评论 0

Archangel

文章 0 评论 0

freedog

文章 0 评论 0

Hunk

文章 0 评论 0

18819270189

文章 0 评论 0

wenkai

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文