为什么核心装饰器的自动绑定两次定义了绑定功能?

时间:2018-08-06 11:56:14

标签: javascript

这是源代码autobind.js。 我对getter方法感到困惑。getter方法返回一个boundFn,但同时在“ this”上定义了boundFn,为什么?为了效率?

get() {
  // ...omit
  const boundFn = bind(fn, this);
  defineProperty(this, key, {
    configurable: true,
    writable: true,
    // NOT enumerable when it's a bound method
    enumerable: false,
    value: boundFn
  });
  return boundFn;
},

1 个答案:

答案 0 :(得分:0)

我这样测试。

    const MongooseSchema = require('../models/mongoose')

     app.post('/',(req,res)=>{
     var obj = new MongooseSchema(req.body);
      obj.save((err,success)=>{
       if(err){
           res.send(err)
       }
       res.send(success)
     })

为了效率。它不会总是查找原型链。我想是