Разница в объявлении переменных объектом или отдельными элементами (var)
Глупый вопрос. Стоит ли объединять несколько переменных в javascript коде в объект? Будет ли разница между кучей объявленных переменных и одним объектом (оптимизация, загруженность памяти)?
var a = 'string',
b = 1234545,
c = $('.selector'),
d = true;
//или
var mainVariables = {
a : 'string',
b : 1234,
c : $('.selector')
}
Ответы (2 шт):
Если эти переменные имеют принадлежность к одной сущности, то стоит объединить:
user = {
name: "Alex",
age: 23
}
Если это разные по смыслу переменные - не стоит.
Вы можете это сами проверить в инструментах разработчика в браузере, в Chrome принцип примерно такой: заходите во вкладку memory делаете snapshot вбиваете в console свой объект делаете еще snapshot смотрите по фильтру "оbject allocated between numOfSnapshot numOfSnapshot + 1" находите свой объект смотрите сколько памяти в байтах он занимает, проделываете тоже самое с переменными, только они уже в System/context.
А если вам просто интересно кто занимает памяти больше, то ответ: отдельно объявленные переменные занимают памяти больше, чем в объекте.