蓝鸟图书馆的wiki中有一篇文章优化杀手。在这篇文章中有一个短语:
目前无法优化: ..。 包含复合赋值的函数 包含复合const赋值的函数。
复合让与复合分配是什么意思?在ECMAScript 5.1中有复合赋值的概念,但在ECMAScript 2015中,似乎没有任何复合赋值的概念,只有正规的赋值。
我怀疑复合出租和康斯特转让,只是申报后的复合转让。例如:
let n = 1;
n += 4;我说的对吗?
发布于 2016-03-28 00:57:02
是的,这似乎正是它的意思。我有以下代码(删除了不相关的附加行):
function updatePlayer(player) {
let direction = player.getDirection();
if (player.isPressingLeft()) {
direction += angleChange;
}
if (player.isPressingRight()) {
direction -= angleChange;
}
player.setDirection(direction);
}updatePlayer在Chrome的Profiles选项卡中生成了一个警告,而不是优化:不支持让复合赋值,所以我没有使用l += r,而是尝试了l = l + r,并得到了显著的、一致的性能改进。
铬49.0.2623,与l = l + r或var相比!我想这将在未来的版本中得到修正,因为火狐、IE11和边缘都不会受到影响,而且谷歌显然知道这个问题。
https://stackoverflow.com/questions/34595356
复制相似问题