function solution(strings, n) {
var answer = [];
var array = [];
//1. strings[i][n] 찾기
for (let i = 0; i < strings.length; i++) {
strings[i][n];
//2. 해당 문자열들을 각 배열의 문자열 앞에 붙인 새 배열을 만듬
array.push(strings[i][n] + strings[i]);
}
//3. 완성된 배열을 문제에서 요구하는 데로 정렬함
array.sort();
//4. 각 배열에서 앞 글자를 떼어냄
var newArray = [];
for (let j = 0; j < array.length; j++) {
newArray.push(array[j].substring(1));
}
return answer;
}
String.prototype.substring() - JavaScript - MDN Web Docs
보통 array.prototype.method 에는 String.prototype.method가 없는데, 얘는 예외인가 보다. 잘되네
String.prototype.toLowerCase(), String.prototype.toUpperCase()는 배열의 상속 체인에 존재하지 않는다.
다른 사람 답변
function solution(strings, n) {
// strings 배열
// n 번째 문자열 비교
return strings.sort((s1, s2) => s1[n] === s2[n] ? s1.localeCompare(s2) : s1[n].localeCompare(s2[n]));
}