视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
关于javascriptfunction对象那些迷惑分析_js面向对象
2020-11-27 21:01:15 责编:小采
文档


js中function对象是一个令人着迷的东西,但由于他太过于灵活,常常令人迷惑,下面我贴一些代码:

大多数人这样简写:
代码如下:function test () {}

《jsvascript语言精粹》整本书这样写:
代码如下:var test = function () {}

函数可以立即运行并赋值:
代码如下:
var test = function () {} () // test === undefined
var test2 = function () {return '糖饼'}() // test2 === '糖饼'

但是函数简写方式不能直接运行,下面代码会报错:
代码如下:function test() {}() // SyntaxError: syntax error

如果用”()“运行符包裹后正常:
代码如下:(function test () {})();

其实这个 函数名 test 已经没有意义了,去掉就成了匿名函数,仍然可以自动执行函数体内代码,常用的匿名函数写法:
代码如下:(function () {})();

匿名函数还可以这么写可能会”美观“一点:
代码如下:(function () {}());

看到这,刚接触js哥么是否要疯掉了?我曾看到我项目搞C语言的哥么见过匿名函数后立即石化了…

下载本文
显示全文
专题