【问题标题】:Closure Compiler Error: JSC_NOT_A_CONSTRUCTOR关闭编译器错误:JSC_NOT_A_CONSTRUCTOR
【发布时间】:2014-09-02 16:21:43
【问题描述】:

我正在玩闭包编译器并输入以下代码:

var obj = (function() {
  function H(a) {
    this.a = a
  }
  var h = new H(1);
  h.b=1
  return h
})();

我想看看它是否会转换成这个:

var obj = (function() {
  function H(a) {
    this.a = a;
    this.b = 1
  }
  var h = new H(1);
  return h;
})();

但是我得到了这个错误
JSC_NOT_A_CONSTRUCTOR: cannot instantiate non-constructor at line 6 character 8 var h = new H(1);

我做错了什么?

【问题讨论】:

    标签: javascript optimization google-closure-compiler


    【解决方案1】:

    你必须通过@constructor告诉CC这个函数是一个构造函数:

    /**
     * Makes an H.
     * @constructor
     */
    function H() {
      ...
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-08-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多