newsare.net
Поговорим про микро-оптимизацию. Про, казалось бы, самую безобидную вещь: обычный {}.[object Object] выглядит почти бесплатной абстракцией. Создал обОбъекты в JS не бесплатные
Поговорим про микро-оптимизацию. Про, казалось бы, самую безобидную вещь: обычный {}.[object Object] выглядит почти бесплатной абстракцией. Создал объект, напихал полей в любом порядке, удалил ненужное, передал дальше и забыл. Но, внезапно, одинаковые для тебя объекты могут оказаться разными для V8, порядок присваиваний влияет на машинный код, а “безобидный” delete оставляет после себя совсем не пустое место.Для 99% систем это не имеет значения. А вот если у тебя hot path, через который проходят десятки тысяч объектов в секунду, или ты пишешь библиотечный код, стоит знать, что V8 на самом деле делает с твоими объектами. И чего V8 там делает? Read more











