{"size": 673, "ext": "js", "max_stars_repo_path": "node/instanciaCliente.js", "max_stars_repo_name": "AlisonMarques/Curso-Web-JavaScript", "max_stars_repo_stars_event_min_datetime": null, "max_stars_repo_stars_event_max_datetime": null, "max_issues_repo_path": "node/instanciaCliente.js", "max_issues_repo_name": "AlisonMarques/Curso-Web-JavaScript", "max_issues_repo_issues_event_min_datetime": null, "max_issues_repo_issues_event_max_datetime": null, "max_forks_repo_path": "node/instanciaCliente.js", "max_forks_repo_name": "AlisonMarques/Curso-Web-JavaScript", "max_forks_repo_forks_event_min_datetime": null, "max_forks_repo_forks_event_max_datetime": null}
{"max_stars_count": null, "max_issues_count": null, "max_forks_count": null, "avg_line_length": 26.92, "max_line_length": 54, "alphanum_fraction": 0.7369985141}
const contadorA = require('./instanciaUnica');
const contadorB = require('./instanciaUnica');

/**
 * Sempre que tiver () na frente, significará que esta
 * invocando uma função factory
 */
const contadorC = require('./instanciaNova')();
const contadorD = require('./instanciaNova')();

// instancia UNICA
// está guardando valor em cima de outra instancia
// fazendo cache
contadorA.inc();
contadorA.inc();
console.log('instancia Unica');
console.log(contadorA.valor, contadorB.valor);

// instancia NOVA
// nao está guardando valor em cima de outra instancia
contadorC.inc();
contadorC.inc();
console.log('instancia Nova');
console.log(contadorC.valor, contadorD.valor);
