#5571·UglifyJS

Minify global objects

Author: keganlanceCreated Jul 19, 2022Updated Jul 19, 2022

Currently UglifyJS doesn't make the the code shorter by replacing globals with a variable reference. I wonder why this is the case.

Take something like:

(function () {
  let button = document.createElement('button');
  let span = document.createElement('span');
  span.textContent = 'something';
  button.appendChild(span);
  document.body.appendChild(button);
})();

This could easily be minified more when replacing the document references with a variable:

(function (document_) {
  let button = document_.createElement('button');
  let span = document_.createElement('span');
  span.textContent = 'something';
  button.appendChild(span);
  document_.body.appendChild(button);
})(document);

It could apply to more globals like window, navigator, and others. Is there a reason this is not included in minifiers?