writable
: κ°(value) μμ κ°λ₯ μ¬λΆ. false
μΌ κ²½μ°, μ½κΈ°λ§ κ°λ₯enumerable
: λ°λ³΅λ¬Έμ μ¬μ©ν΄ λμ΄ κ°λ₯ μ¬λΆ. false
μΌ κ²½μ°, λ°λ³΅λ¬Έμ μ¬μ©ν΄ λμ΄ λΆκ°configurable
: νλ‘νΌν° μμ μ νλκ·Έ μμ κ°λ₯ μ¬λΆ. false
μΌ κ²½μ°, νλ‘νΌν° μμ μ μμ λΆκ°let user = {
name: "John",
surname: "Smith",
get fullName() {
// getter, user.fullName μ€νν λ μ€νλλ μ½λ
return `${this.name} ${this.surname}`;
},
set fullNameSet(value) {
// setter, user.fullName = valueλ₯Ό μ€νν λ μ€νλλ μ½λ
[this.name, this.surname] = value.split(" ");
}
};
console.log(user.fullName); // John Smith
// μ£Όμ΄μ§ κ°μ μ¬μ©ν΄ set fullNameSet μ€ν
user.fullNameSet = "Bori Lee";
console.log(user.fullName); // Bori Lee
console.log(user.name); // Bori
console.log(user.surname); // Lee
const user = (function () {
let name = 'John';
let surname = 'Smith';
return {
fullname: function() {
return `${name} ${surname}`;
}
};
}());
user.fullname() // John Smith
user.name // undefined
user.surname // undefined
=> νΉκ°μ κ°μ΄ μ°Έμ¬ν λΆμ΄ μ 리ν΄μ£Όμ ¨λ€μπ