在这个例子中,IIFE的用途是什么?

时间:2013-11-04 08:39:31

标签: javascript iife

我知道IIFE是什么,其目的是提供某种形式的封装。最近几天我一直在观看他们使用这种模式的视频教程:

var ViewModel = (function(){
  var model = function(){
    //...
  };
  return model;
})();

//in the same or another file:
var viewModel = new ViewModel();

我没有看到在这里使用IIFE的优势。这样做有什么好处:

var ViewModel = function(){ 
    //...
  return model;
};

var viewModel = new ViewModel();

1 个答案:

答案 0 :(得分:2)

在这种特殊情况下,没有任何优势。

在更一般的情况下,它允许创建范围变量以使用返回的函数。