Я заметил, что Google Closer Compiler может упаковать операторы с переменными в предыдущее объявление var
, производя повторяющиеся идентификаторы в этом объявлении. Это пример вывода, который я получил:
var a = Ak - Aj,
b = Bk - Bj,
c = Math.sqrt(a*a+b*b),
a = a / c,
b = b / c
Обратите внимание, как a
и b
повторно объявлены и им присвоены новые значения в пределах той же самой декларации var
. Кроме того, похоже, что старые значения a
и b
используются при их второй инициализации. Создает ли это хорошо определенное поведение в ES5 / ES6 ?