吃鸡游戏
我刚开始遇到这个问题(匿名函数)的时候也很迷茫呵呵。后来再网上查了很多。觉得下边这种解释挺明白的。(1). 首先, 要清楚两者的区别:(function {// code})是表达式, function {// code}是函数声明.(2). 其次, js"预编译"的特点:js在"预编译"阶段, 会解释函数声明, 但却会忽略表式.(3). 当js执行到function() {//code}();时, 由于function() {//code}在"预编译"阶段已经被解释过, js会跳过function(){//code}, 试图去执行();, 故会报错;当js执行到(function {// code})();时, 由于(function {// code})是表达式, js会去对它求解得到返回值, 由于返回值是一 个函数, 故而遇到();时, 便会被执行.