Size: a a a

2021 March 10

МТ

Марк Танащук... in Svelte [svelt]
Не все так однозначно
источник

МТ

Марк Танащук... in Svelte [svelt]
Как кажется
источник

МТ

Марк Танащук... in Svelte [svelt]
Однако как сами разработчики v8 заявляют - конвейеры позволяют более прямо управлять массивами избежав оптимизаций проверяющих доступ массива вне индекса и т.д.
Тобишь в цикле packed_elements никогда не станет hole_elements если там нет undefined
источник

МТ

Марк Танащук... in Svelte [svelt]
Хоть в данном примере уже в setup установлен hole_ints с начала - в реальных кейсах будет видна разница
источник

МТ

Марк Танащук... in Svelte [svelt]
Марк Танащук
Однако как сами разработчики v8 заявляют - конвейеры позволяют более прямо управлять массивами избежав оптимизаций проверяющих доступ массива вне индекса и т.д.
Тобишь в цикле packed_elements никогда не станет hole_elements если там нет undefined
И еще определенный ряд оптимизаций и прочего
источник

AP

Alexander Ponomarev in Svelte [svelt]
ты не думаешь что столько же нюансов есть со стороны конвееров
источник

AP

Alexander Ponomarev in Svelte [svelt]
которые его деградируют
источник

AP

Alexander Ponomarev in Svelte [svelt]
"юзайте конвееры везде" - спасибо Марк но я не голодный
источник

МТ

Марк Танащук... in Svelte [svelt]
Alexander Ponomarev
которые его деградируют
Теоретически да, однако более агрессивные оптимизации нельзя делать по причинам поддержки старее браузеров
источник

AP

Alexander Ponomarev in Svelte [svelt]
да какие поддержки браузеров
источник

МТ

Марк Танащук... in Svelte [svelt]
Alexander Ponomarev
да какие поддержки браузеров
О поддержке стабильности в старых браузерах
источник

AP

Alexander Ponomarev in Svelte [svelt]
ладно юзай свои конвееры, лень обьяснять
источник

МТ

Марк Танащук... in Svelte [svelt]
for(let i = 0; i <= arr.length; i++) {
 let res = arr[i]
}
источник

МТ

Марк Танащук... in Svelte [svelt]
Угадай почему этот код
источник

МТ

Марк Танащук... in Svelte [svelt]
медленнее в несколько раз обычного цикла for
источник

МТ

Марк Танащук... in Svelte [svelt]
А теоретически может даже деопт прийти
источник

11

1 1 in Svelte [svelt]
из-за .length
источник

AP

Alexander Ponomarev in Svelte [svelt]
не буду гадать мне не интересно
источник

11

1 1 in Svelte [svelt]
но всё гораздо сложнее, там злые оптимизации были под это всё
источник

AP

Alexander Ponomarev in Svelte [svelt]
у тебя даже цикл написан с выходом за предел массива я не знаю о чем можно говорить
источник