'inlining' в JavaScript?

В JavaScript с моей собственной реализацией эмулятора получение значения поля регистра RA из 32-битной инструкции i часто представляется как:

this.gpr.u32[(i >> 16) & 0x1f]

Однако, имея Вышеупомянутое выражение много раз в функции некрасиво, и его трудно отслеживать и редактировать. Я избегал определять переменную ra с этим выражением и использовать ее, потому что думал, что она будет храниться в памяти, а ее получение будет дорогостоящим. Стоит ли мне беспокоиться об этом или современные движки JavaScript встраивают значение переменной в операторы, следующие за определением? Хотя использование переменной делает код намного чище, я действительно не хочу использовать ее, если она замедлит время выполнения в среде, чувствительной к производительности, такой как эмулятор.

5
задан Delan Azabani 22 May 2011 в 09:14
поделиться