const convert = (str) => {
let result = [];
let temp = '';
for(let i=0; i<str.length; i++){
while(!isNaN(parseFloat(str[i])) || str[i]==='.'){ //숫자거나 . 이면
temp+=str[i];
i++;
}
if(temp) result.push(temp);
if(isNaN(parseFloat(str[i]))){ // 연산자이면
result.push(str[i]);
temp='';
}
}
return result;
}
이거 문자열로 된 식(ex: '13+2')을 배열로(ex: ['13', '+', '2']) 바꾸는 함수인데 배열 맨 끝에 'undefined'가 추가되는데
이유를 모르겟슴 ㅜㅜ
해당 댓글은 삭제되었습니다.
if문에 str[i]&& 이거 추가해서 해결하긴 했는데
내 생각으로는 저코드가 왜 언디파인드가 추가되는건지 이해가 안가서 ㅠ
이 댓글은 게시물 작성자가 삭제하였습니다.
if(i
마지막 글자 체크 후 i++ 4로 증가 str[4] parseFloat 시 true 값이라서 그럼 아래 처럼 변경하먄 됨 if (i 등호 안써지네 작음 str.length && isNaN(parseFloat(str[i]))){ // 연산자이면