Descargué la versión más reciente del compilador y traté de optimizar el código js con estas banderas:
java -jar closure-compiler-v20211006.jar -W VERBOSE -O WHITESPACE_ONLY --language_out ECMASCRIPT5 $script_path_in --js_output_file $script_path_tmp
El compilador de cierre ha optimizado estas líneas de código:
for(var extraProperty of extraProperties){ option.setAttribute(extraProperty,initialOption[extraProperty]); }dentro
for (var $jscomp$iter$0 = $jscomp.makeIterator(extraProperties), $jscomp$key$extraProperty = $jscomp$iter$0.next(); !$jscomp$key$extraProperty.done; $jscomp$key$extraProperty = $jscomp$iter$0.next()) { var extraProperty = $jscomp$key$extraProperty.value; { option.setAttribute(extraProperty, initialOption[extraProperty]) } }Y como resultado recibo tal error en el navegador:
all_compressed.js Uncaught ReferenceError: $jscomp no está definido
¿Hay alguna manera de cambiar las especificaciones del idioma con este compilador sin agregar dependencias secundarias al proyecto, o tal vez sea un error?
La mejor opción para el modo de solo espacio en blanco es establecer el idioma en la última versión de ECMASCRIPT utilizada por el código fuente (o posterior) para evitar dependencias de tiempo de ejecución.