Rvf*_*fvl 0 javascript reactjs prettier
我正在尝试基于React中的数学表达式对数组进行切片。但是,更漂亮的扩展名不允许我这样做,因为它删除了括号,使表达式不正确。
这是示例:
const paginateItems = items.slice(
pageIndex * itemsPerPage,
(pageIndex * itemsPerPage) * 2
)
Run Code Online (Sandbox Code Playgroud)
更漂亮的改变是
const paginateItems = items.slice(
pageIndex * itemsPerPage,
pageIndex * itemsPerPage * 2
)
Run Code Online (Sandbox Code Playgroud)
我该如何解决这个问题,以免强迫我的表达不正确?
我该如何解决这个问题,以免强迫我的表达不正确?
它不会使您的表达不正确。*是左关联的,表示与a * b * c完全相同(a * b) * c。该代码中的括号对结果没有任何影响。
如果您的表达式为pageIndex * (itemsPerPage * 2),则如果真的很大(假设为2或更高),则可能会影响结果(在编程中为¹),itemsPerPage方法是在过程itemsPerPage * 2中引起溢出而不是在过程中引起溢出。因此,我希望在这种情况下,Prettier不会让他们呆着。但是,使用,根本没有任何效果。pageIndex * itemsPerPagepageIndex(pageIndex * itemsPerPage) * 2()
¹编程“中” -在数学的世界里,在括号pageIndex * (itemsPerPage * 2)不会做出任何区别两种,因为乘法是传递的(我认为这是这个词):a * b * c是一样的(a * b) * c是一样的a * (b * c)。但是在编程中,我们处理的数值类型在较大范围内具有有限的范围和/或有限的精度,因此两次乘法运算发生的顺序很重要。