-
Notifications
You must be signed in to change notification settings - Fork 7
Map κ³Ό Set
iforget edited this page May 1, 2020
·
1 revision
- ES6 μ΄μ μλ κ°μ²΄λ₯Ό λμ μ¬μ©ν¨μΌλ‘μ¨ μκΈ°λ λ¨μ λ€
- νλ‘ν νμ 체μΈμΌλ‘ μΈν μλνμ§ μμ μ°κ²°
- κ°μ²΄μμ μ°κ²°λ ν€μ κ°μ΄ λͺκ°λ λλμ§ μ½κ² μκΈ° μ΄λ €μ
- κ°μ²΄λ₯Ό ν€λ‘ μ¬μ©νμ§ λͺ»ν¨
- κ°μ²΄λ₯Ό μ¬μ©νλ©΄ νλ‘νΌν° μμλ₯Ό μ ν 보μ₯νμ§ μμ
- μ΄ν°λ¬λΈ κ°μ²΄
const u1 = {name: 'Cynthia'};
const u2 = {name: 'Jackson'};
const u3 = {name: 'Olive'};
const u4 = {name: 'James'};
const userRoles = new Map();
userRoles.set(u1, 'User');
userRoles.set(u2, 'User');
userRoles.set(u3, 'Admin');
const userRoles2 = new Map();
userRoles2
.set(u1, 'User')
.set(u2, 'User')
.set(u3, 'Admin');
const userRoles3 = new Map([
[u1, 'User'],
[u2, 'User'],
[u3, 'Admin']
]);
console.log(userRoles.get(u3)); //Admin
console.log(userRoles.has(u3)); //true
console.log(userRoles.get(u4)); //undefined
console.log(userRoles.has(u4)); //false
console.log(userRoles.size); //3
userRoles.keys(); //ν€λ€μ μ΄ν°λ¬λΈ κ°μ²΄ λ°ν MapIterator
userRoles.values(); //κ°λ€μ μ΄ν°λ¬λΈ κ°μ²΄ λ°ν
userRoles.entries(); // [ν€,κ°] λ°°μ΄λ‘ μ΄λ€μ§ μ΄ν°λ¬λΈ κ°μ²΄ λ°ν
for (let ur of userRoles.entries())
console.log(`${ur[0].name}: ${ur[1]}`);
for (let [u, r] of userRoles.entries())
console.log(`${u.name}: ${r}`);
// entries()λ©μλλ λ§΅μ κΈ°λ³Έ μ΄ν°λ μ΄ν°
for (let [u, r] of userRoles)
console.log(`${u.name}: ${r}`);
//νΉμ μμλ₯Ό μ§μΈλ
userRoles.delete(u2);
//μμλ₯Ό λͺ¨λ μ§μΈλ
userRoles.clear();- Mapκ³Όμ μ°¨μ΄μ
- ν€λ λ°λμ κ°μ²΄μ¬μΌ ν¨
- λ΄λΆμ μ μ₯λ κ°μ²΄λ₯Ό μ°Έμ‘°νλ κ°μ΄ μμ κ²½μ° κ°λΉμ§ μ½λ μ μ λμμ΄ λ¨
- WeakMapμ μ΄ν°λ¬λΈμ΄ μλλ©° sizeλ μμ μλ€
- clear() λ©μλ μμ
- μ½μ ν μμλλ‘ μ λ ¬λμ΄ λ€μ΄κ°
- μ΄ν°λ¬λΈ κ°μ²΄
const roles = new Set();
roles.add("User");
roles.add("Admin");
roles.size; //2
console.log(roles.has("User")); //true
for(let role of roles)
console.log(role);
roles.delete("Admin"); // true
roles.delete("Admin"); //false- Setκ³Όμ μ°¨μ΄μ
- ν€λ λ°λμ κ°μ²΄μ¬μΌ ν¨
- λ΄λΆμ μ μ₯λ κ°μ²΄λ₯Ό μ°Έμ‘°νλ κ°μ΄ μμ κ²½μ° κ°λΉμ§ μ½λ μ μ λμμ΄ λ¨
- WeakSetμ μ΄ν°λ¬λΈμ΄ μλλ©° sizeλ μμ μλ€
- clear() λ©μλ μμ