Каковы различия производительности / памяти между Javascript объектами разных размеров? - PullRequest
0 голосов
/ 02 мая 2020

В Javascript, скажем, у меня было два объекта x и y. у является подмножеством х через деструктурирование. Если бы я должен был передать один из этих объектов другой функции много раз, как это повлияло бы на производительность / память? Первоначально я подумал бы, что, поскольку он содержит меньше данных, но в Javascript объекты передаются по ссылке - так что я прав, предполагая, что любой из этих объектов в равной степени повлияет на память функции, которую я вызываю?

1 Ответ

0 голосов
/ 02 мая 2020

Объекты передаются функциям как указатели в Javascript. Таким образом, передача указателя на большой объект не стоит больше, чем передача указателя на маленький объект, и нет копий объекта, созданного при передаче в качестве аргумента функции. В любом случае (большой объект или маленький объект) он просто передает указатель на объект, а не фактически передает объект. И использование памяти вызываемой функции не изменится, будет ли переданный ей объект большим или маленьким.

Теперь, если функция делает явную копию объекта, который передается (как в случае с Object.assign() или с деструктуризацией), тогда использование этой функции в памяти будет зависеть от того, насколько велик объект, из которого он делает копию, что, я полагаю, вполне логично.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...