2016-08-14 31 views

回答

1

您可以使用Object.keys().forEach()

var d = { x: 3, y: 4 }, d3 = { event: { dx: 1, dy: 2 } }; 
 

 
Object.keys(d3.event).forEach(prop => d[prop[1]] += d3.event[prop] || 0); 
 

 
console.log(d);

+1

'[... p]'是什么意思? – Bergi

+0

@incodeveritas查看更新后的帖子 – guest271314

+1

这很丑!但是,这是一场胜利。我没有冷静下来。 –

1

您可以使用解构来消除重复的点符号。

const { dx, dy } = d3.event; 
+0

'const {dx,dy} = d3.event'会创建两个额外的变量'dx','dy'? – guest271314

+0

不是额外的变量,但它会创建变量,允许上面的代码被写入。 'd.x + = dx' –

+0

_“不附加变量,但会创建变量”_? 'dx'不是一个额外的变量? – guest271314

相关问题