본문 바로가기

JavaScript

(20)
javascript 목적에 맞는 답변 취하기 ( 최소공배수 ) 알게 된 점 시간이 걸리더라도 문제를 잘 읽고 본질에 접근하자. 실행 버튼을 눌렀을 때 잘 되어도 실제 제출 후에 많은 케이스를 돌다 안 될 수 있다. 시도 function solution(number, n, m) { if(number%n === number%m){ return 1 }else { return 0 } } 같으면 끝나는 문제인 줄 알았는데, 본질은 최소공배수로 나눈 나머지는 0이라는 데 있다. 문제 프로그래머스 코딩테스트 입문 : 공배수 (바로가기) 정수 number와 n, m이 주어집니다. number가 n의 배수이면서 m의 배수이면 1을 아니라면 0을 return하도록 solution 함수를 완성해주세요. 해결 function solution(number, n, m) { if(number..
javascript 배열 요소 정렬 오름차순 내림차순 알게 된 점 오름차순 원소 정렬 array.sort(function(a, b) {return a - b}) 내림차순 원소 정렬 array.sort(function(a, b) {return b -a}) 시도 function solution(array) { return array.sort()[(array.length+1)/2 -1] } 구글링을 통해 함수를 sort 뒤의 () 안에 주지 않으면 요소를 문자열로 취급한다는 것을 알게 됨 오름차순 원소 정렬 함수를 알게 됨 () 사이에 function(a, b) {return a - b} 삽입 문제 프로그래머스 코딩테스트 입문 : 중앙값 구하기 (바로가기) 중앙값은 어떤 주어진 값들을 크기의 순서대로 정렬했을 때 가장 중앙에 위치하는 값을 의미합니다. 예를 들어..
javascript 최대공약수를 이용해 분수의 합 구하기 알게 된 것 기약분수 : 분모와 분자를 그들의 최대공약수로 나누면 기약분수 최대공약수로 나누면 나머지가 0 시도 let numer = numer1*denom2 + numer2*denom1 let denom = denom1*denom2 이후 구글링 한 답안을 이해하려고 하였음 문제 프로그래머스 코딩테스트 입문 : 분수의 합 (바로가기) 첫 번째 분수의 분자와 분모를 뜻하는 numer1, denom1, 두 번째 분수의 분자와 분모를 뜻하는 numer2, denom2가 매개변수로 주어집니다. 두 분수를 더한 값을 기약 분수로 나타냈을 때 분자와 분모를 순서대로 담은 배열을 return 하도록 solution 함수를 완성해보세요. 풀이 function solution(numer1, denom1, numer2, ..
javascript for 문 과 if 문을 함께 사용하는 예 알게 된 것 1. 더하기 할당 x += y x = x + y 두 식은 같다. 2. for 문의 기본 원리 for (시작;조건;동작){ 조건이 일치 할 경우 동작을 하면서 돌리고 싶은 것 } 소괄호 ( ) 안은 세미콜론 ; 이다!! ,로 구분하지 않기! 문제 프로그래머스 코딩테스트 입문 : 짝수의 합 (바로가기) 정수 n이 주어질 때, n이하의 짝수를 모두 더한 값을 return 하도록 solution 함수를 작성해주세요. 풀이 function solution(n) { let answer = 0 for(let i=0;i
javascript = , == , === 의 차이 알게 된 것 = : 할당 == : 비교 > 값이 같고 타입이 다를 경우 자동 형변환 한 뒤 값을 비교한다. === : 비교 > 두 변수의 타입까지 같아야 한다. 오류 = Error == Pass === Pass 문제 프로그래머스 코딩테스트 입문 : 각도기 (바로가기) 각에서 0도 초과 90도 미만은 예각, 90도는 직각, 90도 초과 180도 미만은 둔각 180도는 평각으로 분류합니다. 각 angle이 매개변수로 주어질 때 예각일 때 1, 직각일 때 2, 둔각일 때 3, 평각일 때 4를 return하도록 solution 함수를 완성해주세요. 풀이 if(0 < angle && angle < 90) { return 1 } else if(angle == 90) { return 2 } else if(90 < a..
javascript 6. 객체 순회 , 객체 분해 , 배열 분해 이제 제목만 봐도 모르겠는 파트로 들어왔다. 배열과 객체를 거쳐 왔으니 이것도 할 수 있겠지. 힘내자. 객체 순회 순회 (iteration) 에 필요한 메서드 map.keys() map.values() map.entries() > 사용할 수 있는 자료 구조 : Map Set Array > 반환 값 : iterable 객체 Object.keys(obj) 객체의 키만 담은 배열을 반환 Object. values(obj) 객체의 값만 담은 배열을 반환 Object.entries(obj) [키, 값] 쌍을 담은 배열을 반환 > 반환값 : 진짜 배열 객체 변환하기 객체에는 map, filter 같은 배열 전용 메서드를 사용할 수 없다. 하지만 이렇게 하면 된다. 1. Object.entries(obj) 를 사용해..
javascript 5. 객체 객체는 몇 가지 특수한 기능을 가진 연관 배열 (associative array) 객체는 프로퍼티를 저장한다. {key:value} 이것을 property 라고 한다. key: 문자형 (문자열, 심볼) value : 모든 자료형 let user = { // 객체 user name: "John", //첫 번째 프로퍼티 age: 30 //두 번째 프로퍼티. key는 age, value는 30 객체이름.key 점 표기법 (dot notation) : 객체에 저장된 key에 해당하는 value 불러오기. delete 프로퍼티이름 프로퍼티 삭제 복수의 단어를 사용한 키값은 따옴표로 묶어라 trailing (hangoing) , 예시) 한 줄에 하나의 문장을 담고 쉼표로 구분지어 밑으로 내려간다. let user ..
javascript 3. 배열과 반복문 1. 배열 객체형에 속한다. 키가 숫자. 두 가지 문법이 있다. let arr = [] let arr = new Array() // 실수가 생길 수 있으니 잘 이해하고 사용 꺼낼 때는 arr[순서] 0부터 시작한다. let fruits = ["사과", "오렌지", "자두"] alert( fruits[0] ) //사과 alert( fruits.length ) // 3 alert( fruits ) //사과, 오렌지, 자두 - length : 배열에 담긴 요소의 수 // length 값 감소를 이용해 배열 자르기 // 증가시켜도 배열에는 아무런 변화가 없다 let arr = [1,2,3,4,5] arr.length = 2 alert( arr ) // 1,2 arr.length = 5 //본래의 길이로 되돌리기..