Почему TypeScript делает заметно больший код JavaScript при использовании enum? [дублировать]Javascript

Форум по Javascript
Anonymous
Почему TypeScript делает заметно больший код JavaScript при использовании enum? [дублировать]

Сообщение Anonymous »

Итак, почему TypeScript делает код JavaScript на заметном напряжении при использовании enum?

Код: Выделить всё

enum SeatChoice {
AISLE,
WINDOW,
MIDDLE,
FOURTH
}

const seat = SeatChoice.AISLE;
< /code>
и эквивалентный код Javascript: < /p>
var SeatChoice;
(function (SeatChoice) {
SeatChoice[SeatChoice["AISLE"] = 0] = "AISLE";
SeatChoice[SeatChoice["WINDOW"] = 1] = "WINDOW";
SeatChoice[SeatChoice["MIDDLE"] = 2] = "MIDDLE";
SeatChoice[SeatChoice["FOURTH"] = 3] = "FOURTH";
})(SeatChoice || (SeatChoice = {}));
var seat = SeatChoice.AISLE;
< /code>
, пока я только что заменил enum на const in typescript: < /p>
const SeatChoice {
AISLE,
WINDOW,
MIDDLE,
FOURTH
}

const seat = SeatChoice.AISLE;
< /code>
его эквивалентный код JavaScript становится намного более проще: < /p>
var SeatChoice, _a = void 0, AISLE = _a.AISLE, WINDOW = _a.WINDOW, MIDDLE = _a.MIDDLE, FOURTH = _a.FOURTH;
var seat = SeatChoice.AISLE;
Также я не понимаю концепции "_a" в вышеуказанном коде Javscript snipet?

Подробнее здесь: https://stackoverflow.com/questions/795 ... -used-enum

Вернуться в «Javascript»