关于自执行函数遇到的问题

2017-12-20  本文已影响0人  翊溪
'use strict';
// 立即执行函数的几种写法
// 最常用的两种
// ( function() {}() );
// ( function() {} )();
var fn1 = (function () {
    console.log('fn1');
})();

var fn2 = function () {
    console.log('fn2');
}()

// 我们有的时候会看见上面两种写法,其实都是自执行的,因此下面会打印出undefined

console.log(typeof fn2) // undefined

// 延伸

// function() {
//  console.log('匿名函数');
// }();
// function fn3() {
//  console.log('fn3');
// }();

上述两种写法代码都会报错,底层原理是归约

function fn3() {
    console.log('fn3');
}(1)
// 这种写法是可以的
上一篇 下一篇

猜你喜欢

热点阅读