这个 Js 片段是什么意思用未定义的方法返回一个新声明的变量

What does this Js snippet mean returning a freshly declared variable with undefined method

我正在处理遗留 JS 脚本:

!function(e, t) {
var a = function() {
        return new a.init
    },
......
//end of JS script 1800 lines later
a.init.prototype = a.prototype, e.PDC = a
}(window, jQuery);

我知道!是一种声明IIFE的方式,但是第一个变量声明,我不明白,因为变量a的init方法还没有声明!

在调用函数之前,不会查找函数内部变量的值。

给定 return new a.init,创建函数时 aundefined(它 声明)并不重要,它将在 调用 .

函数之前