Я привык добавлять словари в код для создания пространства имен:
var namespace = {
// Какой-то код
somefunc: function () { },
// Какие-то данные
somedata: undefined
}
Потому что данные и функции удобно разделяются:
namespace.somefunc();
namespace.somedata = "";
Но мне не совсем ясно, как это искусственное разделение влияет на производительность? Насколько затормаживаются вызовы и обращения?
Ответ
Почти не влияет. Всего лишь 1 доп. поиск в map (все объекты в js являются картами, или map. Вызов namespace.somedata - ни что иное, как window['namespace']['somedata'], против window['somedata'] без нс). Это самая элементарная операция, их масса во время выполнения кода. Зато плюсы (в больших скриптах не засоряется глобальное пространство имен) очевидны.
Комментариев нет:
Отправить комментарий