#5971·UglifyJS

Colison with same name use for 2 var

Author: madrisapiCreated Oct 16, 2025Updated Oct 16, 2025

Uglify version (uglifyjs -V3.19.3)

JavaScript input

var a = 4;
var b = 5;
console.log(a + b);
var c = 6;

function example() {
    var secret = "This is a secret message";
    console.log(secret, a, b, c);
}
example();

The uglifyjs CLI command executed or minify() options used.

let nameCache = {};
let result = minify(code, {
    compress: {
        drop_console: false,
        drop_debugger: false,
    },
    mangle: {
        toplevel: true,
        keep_fnames: false,
        reserved: [],
    },
    nameCache,
});

JavaScript output or error produced.

var o=4,s=5,e=(console.log(o+s),6);function a(){var o="This is a secret message";console.log(o,o,s,e)}a();

** Full Example **

import { minify } from 'uglify-js';

/** Test minify */

const code = `
var a = 4;
var b = 5;
console.log(a + b);
var c = 6;

function example() {
    var secret = "This is a secret message";
    console.log(secret,a,b,c);
}
example();
`;
let nameCache = {};

let result = minify(code, {
    compress: {
        drop_console: false,
        drop_debugger: false,
    },
    mangle: {
        toplevel: true,
        keep_fnames: false,
        reserved: [],
    },
    nameCache,
});

console.log('Name cache:', nameCache);
if (result.code) {
    console.log('Minified code:\n', result.code);
    console.log('expected output:');
    eval(code);
    console.log('actual output:');
    eval(result.code);
} else {
    console.error('Minification failed');
}