直接键访问和对象解构之间的性能

IT技术 javascript reactjs
2021-05-28 00:26:56

下面最有效的代码是什么。

代码 1

const {
  type,
  size,
} = props;

console.log(type);

代码 2*

console.log(props.type);

我在一篇文章中读到,当您读取对象深处的键值对时,会对性能产生影响。我知道访问一个级别不会对性能产生巨大影响。但我想从上面的代码示例(代码 1 和代码 2)中知道它会更快更高效。

2个回答

如果您看到解构部分的转译代码,您会发现正在设置一个新变量。

例如:

const {
  type,
  size,
} = props;

转换为

var type_1 = props.type; // dummy_name
var size_1 = props.size;

因此,正在设置一个额外的变量并且相对较高的内存消耗。但是,性能差异非常小。

在这种情况下肯定是第二个选项 (严格来说是这种情况)

在某些情况下,如果为了某些可读性而牺牲效率,这对大多数人来说很容易判断。

看到性能差异非常小,但它就在那里。

在此处输入图片说明

网址:https : //jsperf.com/destructuring-performance