Indeed, New-Agnostic Constructor Pattern, is the simpliest patter if you want to avoid the new keyword:
function User (name, lastname) {
if (!(this instanceof User)) {
return new User(name, lastname);
}
this.name = name || 'Unknown';
this.lastname = lastname || 'Unknown'
};