π λͺ©μ°¨
μκ³ λ¦¬μ¦
ν°μΌλͺ¬
μκ³ λ¦¬μ¦ ν
μ€νΈ
λ λ°°μ΄μ μ°¨μ΄
ν¬κ·Έλ¨
κ±°μ€λ¦λ
λ€μ£½λ°μ£½
NestJS
Many-To-Many
Login Process
JWT
μκ³ λ¦¬μ¦
π set()
- μ€λ³΅λμ§ μμ μ μΌν κ°λ€μ μ§ν© , λ°°μ΄ μλ!!! κ°μ²΄μ!!!!
- λ°°μ΄ μμ μ€λ³΅λλ μμλ€μ μ κ±°νκΈ° μν΄ μ¬μ©λ¨
- setμ μ΄μ©ν΄μ κ΅μ§ν©, ν©μ§ν©, μ°¨μ§ν©μ ꡬν μ μμ
const set = new Set()
console.log(set) // Set(0) {}, μΈμλ₯Ό μ λ¬νμ§ μμΌλ©΄ λΉ Set κ°μ²΄κ° μμ±λ¨
// μ€λ³΅λ κ°μ Set κ°μ²΄μ μμλ‘ μ μ₯λμ§ μμ
const set1 = new Set([1,2,3,3])
console.log(set1) //Set(3) {1,2,3}
const set2 = new Set("hello")
console.log(set2) //Set(4){'h', 'e', 'l', 'o'}
// λ°°μ΄μμ μ€λ³΅λ μμλ₯Ό μ κ±°
const uniq = array => array.filter(( v, i, self ) => self.indexOf(v) ==i)
// νΉμ?
const uniq = array > [...new Set(array)]
console.log(uniq([2,1,2,3,4,3,4])) // [2,1,3,4]
- μμ κ°μ νμΈ, μμ μΆκ°
// μμ κ°μ νμΈ (.size μ¬μ©, λ°°μ΄μ κ°μλ₯Ό νμΈνλ .length()μ ν·κ°λ¦¬μ§ λ§κΈ°!)
const {size} = new Set([4,3,4,3,8,8,4,6])
console.log(size) // 4
const set3 = new Set([0,4,0,8])
set3.size === 3 // true
// μμ μΆκ° (.add() μ¬μ©, λ°°μ΄μ μΆκ°νλ .push()μ ν·κ°λ¦¬μ§ λ§κΈ°!)
const set4 = new Set()
set4.add(3)
console.log(set4) // Set(1){3}
// μ°μ μΆκ°λ κ°λ₯
set4.add(4).add(8).add(7)
console.log(set4) // Set(1){3,4,8,7}
// μμ μ‘΄μ¬ μ¬λΆ νμΈ
console.log(set4.has(3))
console.log(set4.has(1)) //false
// μμ μμ , boolean κ° λ°ν (true or false)(.delete() μ¬μ©, .pop() μ΄λ ν·κ°λ¦¬μ§ λ§μ~)
set4.delete(3) // μμ μ±κ³΅, true λ°ν
set4.delete(3) // μ΄λ―Έ μμμ μμ κ° λ μμμ΄κΈ° λλ¬Έμ μμ κ° λΆκ°λ₯νμ¬ falseλ₯Ό λ°ννλ€.
// Set κ°μ²΄μ λͺ¨λ μμ μΌκ΄ μμ
console.log(set4) // Set(3) {4,8,7}
set4.clear()
console.log(set4) // Set(0) {}
π forEach()
- λ°°μ΄μμ λ°λ³΅λ¬Έ μ¬μ©νλ €κ³ ν λ μ£Όλ‘ μ¬μ©,
map()μ΄λ λΉμ·νμ§λ§ λ°°μ΄μ λ°ννμ§ μλλ€!
const arr = [1, 2, 3, 4, 5];
// forEach() μ¬μ©
arr.forEach((element) => {
console.log(element);
});
π ν°μΌλͺ¬
// λ¬Έμ : <https://programmers.co.kr/learn/courses/30/lessons/1845> (νλ‘κ·Έλλ¨Έμ€)
function solution(nums) {
const answer = []
for (let i = 0 ; i < nums.length; i++){
if ( (nums.length / 2) !== answer.length &&
answer.includes( nums[i] ) === false ) {
answer.push( nums[i] );
}
if( (nums.length / 2) === answer.length ){
break;
}
}
return answer.length
}
//set() μ΄μ©ν΄μ μ€λ³΅μ²΄ν¬
// length => size
// push => addλ‘ λ³κ²½
function solution(nums) {
const answer = new Set([])
for (let i = 0 ; i < nums.length; i++){
if ( (nums.length / 2) !== answer.size ) {
answer.add( nums[i] );
}
else { break }
}
return answer.size
}
// set(), forEach() ꡬ문 μ¬μ©ν νμ΄
function solution(nums) {
const answer = new Set([])
nums.forEach( monster => {
if( nums.length / 2 > answer.size){
answer.add(monster)
}
})
return answer.size
}
// 리ν©ν λ§
function solution(nums) {
// μ΅λν λ£μ μ μλ ν°μΌλͺ¬μ μ’
λ₯
const answer = new Set(nums).size
// μ΅λν λ£μ μ μλ ν°μΌλͺ¬μ κ°―μ
const limit = nums.length / 2
if (limit >= answer){
return answer
}
return limit
}
μκ³ λ¦¬μ¦ ν
μ€νΈ π₯²π₯²