⬅️ Execute Program Modern JavaScript
Object
- getters
let userName = 'Amir';
const user = {
get userName() { return userName}
}
// with destructuring
const user = {get name() { return 'Be' + 'tty'; }};
const {name} = user;
name;
// Result:
'Betty'
setters:
const user = {
realName: 'Amir',
set userName(newName) { this.realName = newName; }
};
// another example
class User {
constructor(name) {
this.names = [name]
}
set name(newName) {
this.names.push(newName);
}
}
together:
const user = {
realName: 'Amir',
get userName() { return this.realName; },
set userName(newName) { this.realName = newName; },
};
user.userName = 'Betty';
[user.realName, user.userName];
// Result:
['Betty', 'Betty']
Don’t forget the get
or set
keyword:
const user = {
userName: function () { return 'Amir'; }
};
typeof user.userName;
// Result:
'function'
Computed properties
const users = [
{name: 'Amir', loginCount: 5},
{name: 'Betty', loginCount: 16},
];
function loginCount(user) {
return {[user.name]: user.loginCount}
}