Javascript 声明一个变量会花费开销吗?

Javascript 声明一个变量会花费开销吗?,javascript,reactjs,performance,Javascript,Reactjs,Performance,我的潜在客户总是要求我尽可能多地消除新的变量,因为我可以说这会增加管理费用。但是,我不确定这是否会降低性能。如果有什么不同的话,那么创建新变量可以提高代码的可读性。它真的会恶化性能吗 备选案文1: var a = something1(); var b = something2(); var c = something3(); var d = something4(a, b, c); 选项2:只需一行代码 var d=something4(something1(),something2(),s

我的潜在客户总是要求我尽可能多地消除新的变量,因为我可以说这会增加管理费用。但是,我不确定这是否会降低性能。如果有什么不同的话,那么创建新变量可以提高代码的可读性。它真的会恶化性能吗

备选案文1:

var a = something1();
var b = something2();
var c = something3();
var d = something4(a, b, c);
选项2:只需一行代码

var d=something4(something1(),something2(),something3())


请注意:有时,它变得复杂,可读性恶化

如果只使用一次变量,请将其删除。如果2+次-声明变量。 在这种情况下,只有当执行过多使调试变得棘手时,才能声明变量。因此,如果行动符合要求,最好使用
选项2


性能没有变化。仅仅是可读性也会受到太多变量的影响。

严格意义上说,是的,变量使用资源(内存或处理)。但这并不意味着它是坏的或浪费。使用变量使代码更具可读性和/或存储需要重用的数据

稍后,当需要对工作进行QA时,您可以担心优化问题。在软件开发中有一个非常著名的咒语,即在最初编写代码时尝试优化代码通常会导致比解决问题更多的问题


但是我必须说,如果变量中有某些内容导致性能下降,那么您还需要担心其他问题。

这两个选项对于性能几乎是相同的。使用选项2,所有函数调用都将计算到绑定到函数参数的隐藏内存空间。这几乎相当于在选项1中分配变量。

这是最糟糕的过早优化。做最清楚的事情。当您测量了开销,发现它会导致问题时,请担心开销。他们的压缩建议不好。为了可读性和减少开销(这可能只是额外的心理分析),您可以将该函数调用包装在多行上。这是主观的,但我发现选项1的可读性要差得多。我甚至不一定同意这一点。如果一个计算越来越长,使用一个好名字的中间词来分解它可以极大地提高可读性。我个人使用一次性中间体,当它们所属的生产线变得错综复杂时,我会到处使用。(但我没有投反对票。反对票可能是因为这实际上没有解决问题)。@Carcigenicate同意,因此我提到了排队。因为即使是调试也可能很棘手。但是imho太多的简单变量会进一步降低可读性。