다른 사람의 풀이를 확인하다가 구조분해할당을 이용해서 문제를 푼 코드를 봤다.
한번 따라 풀어보려고 했는데, 계속 오류가 났다.
이상해서 답안을 복사해서 비교해 봤는데 다른게 없었는데도 계속 오류가 났고,
답안의 코드는 정상으로 작동했다.
🧐
뭔가 이상해서 다시 찬찬히 살펴봤는데
세미클론이 있고 없고의 차이가 있었다.
function solution(my_string, num1, num2) {
my_string = my_string.split('');
[my_string[num1], my_string[num2]]=
[my_string[num2], my_string[num1]]
return my_string.join('')
}
결과는 정말 하늘과 땅차이 였는데
세미클론이 없는 경우에는
return 값으로 num1과 num2만 출력 되었다.
의도했던건 num1과 num2를 바꿔서 넣어주는 것이기 때문에 정말 의아했는데
이게 바로 세미클론 때문이라는것.....
function solution(my_string, num1, num2) {
my_string = my_string.split('');
[my_string[num1], my_string[num2]]=
[my_string[num2], my_string[num1]]
return my_string
//결과값
//my_string에서 num1과 num2를 바꾼 배열이 출력
}
function solution(my_string, num1, num2) {
my_string = my_string.split('')
[my_string[num1], my_string[num2]]=
[my_string[num2], my_string[num1]]
return my_string
//결과값
//[num1에 해당하는 글자, num2에 해당하는 글자]
}
근데 단순히 .split만 사용해서 세미클론을 붙이고 안붙이고는 차이가 없었다.
function solution(my_string, num1, num2) {
my_string = my_string.split('');
return my_string
//결과값
//배열에 하나하나 담긴 my_string이 나옴
}
function solution(my_string, num1, num2) {
my_string = my_string.split('')
return my_string
//결과값
//똑같이 배열에 하나하나 담긴 my_string이 나옴
}
잊지말자.
세미클론 꼭 붙이기!!!
'코딩테스트' 카테고리의 다른 글
가위바위보 프로그래머스 코딩테스트 문제 (1) | 2023.09.21 |
---|---|
최빈값 구하기__ 정답 풀이 (0) | 2023.09.21 |
문자열의 끝에 이 문자가 있니? endWith() / substr() (0) | 2023.09.13 |
"2개 숫자 모두 배수라면 1을 리턴해주세요" 공배수 문제 or연산자 이용한다구??? (0) | 2023.09.13 |
비트 연산자 _ shift operator (<<) (0) | 2023.09.08 |