在工厂中返回新函数而不是对象

时间:2015-03-28 19:14:17

标签: javascript angularjs

是否有缺点而不是返回对象?

.factory('box', function(){
    var box = (function(){
        var privateVar;
        return {
            watch: {
                song: undefined,
                artist: undefined,
                id: undefined
            },
            update: function() {

            }
        }

    });


    return new box;
})

我想这样做的原因是函数可以在原型中运行并使用它。

1 个答案:

答案 0 :(得分:0)

没有任何退回,你也可以在返回功能中使用并利用this

.factory('example', ['$http', function($http) {
  return function(a, b) {
   this.a = a;
    this.b = b;
 };
}]);

你可以在外面创建一个对象

var one = new example('A', 'B');