https://programmers.co.kr/learn/courses/30/lessons/12926
split()
함수를 사용하여 바꿔준다. charCodeAt()
사용 function solution(s, n) {
// 배열로 만들어 줌
return s.split("").map((str) => {
// 암호화 코드 생성 + n
const code = str.charCodeAt() + n;
if(str.charCodeAt() >= "a".charCodeAt() && str.charCodeAt() <= "z".charCodeAt()) {
if(code > "z".charCodeAt()) return String.fromCharCode(code -26);
return String.fromCharCode(code);
}
if(str.charCodeAt() >= "A".charCodeAt() && str.charCodeAt() <= "Z".charCodeAt()) {
if(code > "Z".charCodeAt()) return String.fromCharCode(code -26);
return String.fromCharCode(code);
}
return " ";
}).join("");
}
charAt()
fromCharCode()
charCodeAt()
문자열을 숫자로 바꾸기
문자열 to 숫자
https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/String/charCodeAt
https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/String/charAt
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/fromCharCode
https://programmers.co.kr/learn/courses/30/lessons/12935
풀이 1
// Math.min을 사용한 풀이
function solution(arr) {
arr.splice(arr.indexOf(Math.min(...arr)) ,1)
return arr.length === 0 ? [-1] : arr
}
풀이 2
function solution(arr) {
// 비교 순회
// 임시 변수 선언
let temp = 0;
for (let j = 1; j<arr.length; j++){
if(arr[j]<arr[temp]) {
temp=j;
}
}
arr.splice(temp,1);
return arr.length === 0 ? [-1] : arr;
}
Array.reduce()
이 함수 또한 배열의 각 값을 비교하여 가장 큰 숫자를 얻을 수 있습니다.
var arr = [1,2,3];
var max = arr.reduce(function(a, b) {
return Math.max(a, b);
});
spread operator
이 함수를 사용하면 배열의 숫자들 중 가장 큰 숫자를 쉽게 얻을 수 있습니다.
var arr = [1, 2, 3];
var max = Math.max(...arr);
https://programmers.co.kr/learn/courses/30/lessons/12931
풀이 1
function solution(n)
{
var answer = 0;
let arr = n.toString().split("").map((el)=> parseInt(el))
for(let i=0; i< arr.length; i++){
answer += arr[i]
}
return answer
}
풀이 2
function solution(n)
{
return (n+"").toString("").split("").reduce((acc,val)=> acc + parseInt(val),0)
}