core icon indicating copy to clipboard operation
core copied to clipboard

perf(core): improve vdom diffing by removing unnecessary conditional statement in getSequence function

Open xxgjzftd opened this issue 4 years ago • 2 comments

Here is some simple explanation for this pr. For the removal of conditional statement if (arrI < arr[result[u]]): Before the while loop at line 2479, the arrI variable always less than the last item of the result array, so after this loop, arrI always less than the result[v], and after this loop, the v always equals to u, so we don't need the arrI < arr[result[u]] statement.

For the result array init const result = []: Actually, this change make the result variable different from original,but it don't effect the children patch result. Original getSequence([0, 1, 8, 7, 9, 5]) will be[0, 1, 3, 4], now it's [1, 3, 4].

xxgjzftd avatar Jun 10 '21 03:06 xxgjzftd