Будет ли JavaScript оптимизировать литерал объекта, определенный в методе? Предположим, у меня есть простая функция просмотра, который привыкает широко:Будут ли оптимизированы литералы объектов JS, определенные в функции?
function lookup(value) {
return {
"A": "a",
"B": "b",
"C": "c"
}[value];
}
Есть ли польза для определения объекта вне функции для повторного использования, или будут двигатель оптимизирует, что далеко для меня?
Первый вопрос, который приходит на ум: Какой двигатель? V8? SpiderMonkey? JScript? Какая * версия * этих двигателей? –
Если функция вызывается только тогда, когда любая внутренняя memoization будет противоположной оптимизации. Объедините оба подхода, инкапсулируя таблицу в объект LookupHelper, который конструирует объект только один раз. –
Никакого конкретного двигателя, просто в общем. –