代码之家  ›  专栏  ›  技术社区  ›  A. L

是否可以访问getter函数作为函数而不是返回值

  •  0
  • A. L  · 技术社区  · 5 年前

    例如

    const obj = {
      get test() {
        return 'something'
      }
    }
    

    有办法回去吗 obj.test 作为功能本身而不是 'something' ,因为目前有一个用例,我不希望函数立即执行。或者是使它不是getter函数的唯一方法

    0 回复  |  直到 5 年前
        1
  •  0
  •   Filipizaum    5 年前

    您可以将函数存储在单独的变量中,并使用 __defineGetter__ method :

    const obj = {}
    
    var obj_getter = function(){
        return 'something'
    };
    
    obj.__defineGetter__('test', obj_getter);
    
    console.log(typeof obj_getter);
    console.log(obj.test);
    
    

    "function"
    "something"