https://school.programmers.co.kr/learn/courses/30/lessons/72410
프로그램 제작자
코드 중심 개발자를 고용하십시오. 스택 기반 위치 일치. 프로그래머를 위한 개발자별 프로필에 가입하고 기술 호환성이 좋은 회사와 연결하십시오.
프로그래머.co.kr
2021년 카카오 블라인드 테스트 질문입니다.
정말 시키는 대로만 하는 것입니다.
function solution(str) {
// 1
str = str.toLowerCase();
// 2
str = str.split('');
for(let i = 0 ; i < str.length; i++){
if(str(i) >= 'a' && str(i) <= 'z') continue;
if(str(i) >= '0' && str(i) <= '9') continue;
if(str(i) === '-' || str(i) === '_' || str(i) === '.') continue;
str.splice(i--, 1);
}
// 3
for(let i = 1; i < str.length; i++){
if(str(i - 1) === '.' && str(i) === '.') str.splice(i-- - 1, 1);
}
// 4
if(str(0) === '.') str.shift();
if(str(str.length - 1) === '.') str.pop();
// 5
if(str.length === 0) str.push('a');
// 6
str = str.join('').substr(0, 15).split('');
if(str(str.length - 1) === '.') str.pop();
// 7
str = str.join('');
if(str.length <= 2) {
return str.padEnd(3, str(str.length-1));
} else return str
}