为什么const值的名字而不是`this`

时间:2017-06-19 20:05:34

标签: javascript

我正在学习airbnb coding style。为什么在以下代码中使用atom.value代替this.value(第3.3节)?有什么好处?

// good
const atom = {
  value: 1,

  addValue(value) {
    return atom.value + value;
  },
};

更新

以下代码是其优点的一个示例。还有其他好处吗?

const bias = atom.addValue;
console.log(bias(11))

由于

1 个答案:

答案 0 :(得分:0)

如果您使用this,则会引用addValue范围:

addValue(value) {
  return this.value + value;
}

此处this不会引用atom,而是addValue()不会引用任何value属性。



const atom = {
  value: 1,

  addValue(value) {
    console.log( atom.value + value);
    return atom.value + value;
  },
};

atom.addValue(20);