https://school.programmers.co.kr/learn/courses/30/lessons/120883
function solution(id_pw, db) {
const db_id = db.map((v) => v[0]);
const db_pw = db.map((v) => v[1]);
if (db_id.includes(id_pw[0])) {
if (db[db_id.indexOf(id_pw[0])][1] === id_pw[1]) {
return "login";
}
return "wrong pw";
}
return "fail";
}
✔ 아이디 찾기를 위해 includes(), 비밀번호 찾기를 위해 indexOf() 메서드를 사용
❗ find()로 요소 자체를 찾아내고 요소가 없으면 fail, 있는데 찾은 요소의 비밀번호가 id_pw[1]과 같지 않으면 wrong pw, 일치하면 login을 리턴하면 더 간단하지 않았을까 생각이 든다.
function solution(id_pw, db) {
const [id, pw] = id_pw;
const m = new Map(db);
return m.has(id)
? m.get(id) === pw ? "login" : "wrong pw"
: "fail";
}
✔ id와 pw는 서로 대응되는 관계 -> Map을 통해서 키-값 쌍으로 구현하면 has나 get 메서드를 통해서 키의 존재 여부 및 키에 해당하는 비밀번호를 찾아낼 수 있다.