본문 바로가기

JavaScript53

[220115] js를 이용한 class="on" 생성/제거하기 목차 1. 클릭으로 class 생성,제거하기 2. 원하는 위치에 생성하기 자바스크립트 그래서 대체 뭘 어떻게 쓰는건데..하다가 드디어 실사용을 하기 시작. 배우자마자 너무 미쳤다..하고 마음속에서 기립박수쳤다. 이걸 이렇게 쓴다고?? 이런 맛에 프로메테우스가 인간한테 불을 준건가. 박수 짝짝짝 손 터지게 치고 앞으로 세바퀴 굴렀다. 미쳤다. [웹페이지는 html, css, javascript 3개로 구현되고 있는데, 자바스크립트는 html을 조정할수 있다]란 말을 실천해보자. 클릭으로 class="on" 생성하기 See the Pen make_class_on by supermint (@ma_ad_shouri) on CodePen. 클릭함으로써 id가 box1인 div를 숨기는 코드다. 클릭을 함으로써 d.. 2022. 1. 15.
[220111] Lv.1 / 짝수와 홀수 문제 사이트 링크: https://programmers.co.kr/learn/courses/30/lessons/12937 코딩테스트 연습 - 짝수와 홀수 정수 num이 짝수일 경우 "Even"을 반환하고 홀수인 경우 "Odd"를 반환하는 함수, solution을 완성해주세요. 제한 조건 num은 int 범위의 정수입니다. 0은 짝수입니다. 입출력 예 num return 3 "Odd" 4 "Even" programmers.co.kr 내 풀이 function solution(num) { let answer = ""; num%2==0?answer="Even":answer="Odd" return answer; } true, false 값이 1, 0 인것을 이용한 풀이 function solution(num) {.. 2022. 1. 11.
[220110] Lv.1 / 최소공배수, 최대공약수 구하기 문제 사이트 링크 : https://programmers.co.kr/learn/courses/30/lessons/12940 코딩테스트 연습 - 최대공약수와 최소공배수 두 수를 입력받아 두 수의 최대공약수와 최소공배수를 반환하는 함수, solution을 완성해 보세요. 배열의 맨 앞에 최대공약수, 그다음 최소공배수를 넣어 반환하면 됩니다. 예를 들어 두 수 3, 12의 programmers.co.kr 문제인식 : 이건 뭐 어디 에? 종이랑 펜을 주면 풀 수 있고, 간단한건 암산으로도 풀 줄 아는데 막상 컴퓨터한테 설명하려니 머리가 터질거같았다. 최대공약수 개념을 학교에서 배운대로 작성하자니, 인간은 나누다가 어느정도 되면 멈추는데 컴퓨터는 멈추지 않잖아??? 이거 뭐 어케해야...???? 그래서 인간의 방.. 2022. 1. 11.
[220110] queryselector, onload, addEventListener, 호출메서드() 목차 1. querySelector 2. addEventListener 3. onload 4. 호출메서드() document.querySelector(selectors); 제공한 선택자 또는 선택자 뭉치와 일치하는 문서 내 첫번째 Element를 반환한다. 일치하는 요소가 없으면 찾지 못한 것이므로 빈 값인 null을 반환한다. selector : 하나 이상의 선택자를 포함한 DOMString. 유효한 CSS 선택자여야만 한다. String과 같은 UTF-16문자열이기때문에 DOMString은 String으로 연결된다. DOMString을 받는 매개변수에 null을 전달하면 보통 문자열로 변환해 "null"이 된다 return : (Object) 제공한 CSS 선택자를 만족하는 첫번째 Element 객체.. 2022. 1. 10.
[220109] 1차 배열, 2차 배열의 합을 forEach, reduce, join으로 해결하기 목차 1. 1차배열의 합 2. 2차배열의 합 주기적으로 배열을 다뤄서 요소들의 합을 내놓으라는 문제를 접하는데, 계속 찾아보고 걔념 잡기 귀찮아서 한번에 정리. 1차 배열의 합 : reduce function a(arr){ return arr.reduce((v,i)=>v+i) } console.log(a([1,2,3,4,5])) 1차 배열의 합 : forEach function a(arr){ arr.forEach(v=>sum+=v); return sum; } console.log(a([1,2,3,4,5])) 1차 배열의 합 : map function a(arr){ arr.map(v=>sum+=v); return sum; } console.log(a([1,2,3,4,5])) forEach랑 map의 차이점.. 2022. 1. 9.
[220108] Lv.1 / 콜라츠 추측 문제 사이트 링크 : https://programmers.co.kr/learn/courses/30/lessons/12943 코딩테스트 연습 - 콜라츠 추측 1937년 Collatz란 사람에 의해 제기된 이 추측은, 주어진 수가 1이 될때까지 다음 작업을 반복하면, 모든 수를 1로 만들 수 있다는 추측입니다. 작업은 다음과 같습니다. 1-1. 입력된 수가 짝수라면 2 programmers.co.kr 내 풀이 let sum=0; do{ if(num==1){break;} //만약 num이 1이면 do문을 빠져나간다 else{ num=((num%2)==0)?Math.floor(num/2):((num*3)+1); //조건이 짝수일때 --> 참이면 2로 나눔, 거짓이면 3을 곱하고 1을 더함 sum++; //do문.. 2022. 1. 9.
[220108] Lv.1 평균값 구하기 문제 사이트 링크 : https://programmers.co.kr/learn/courses/30/lessons/12944 코딩테스트 연습 - 평균 구하기 정수를 담고 있는 배열 arr의 평균값을 return하는 함수, solution을 완성해보세요. 제한사항 arr은 길이 1 이상, 100 이하인 배열입니다. arr의 원소는 -10,000 이상 10,000 이하인 정수입니다. 입출력 예 arr programmers.co.kr 내 풀이 let arr=[1,2,3,4] let sum=0; arr.forEach(v => {sum+=v}); let answer = sum/arr.length reduce를 사용한 더 짧고 빠른 풀이 reduce라는게 있는 것을 배웠다. 짧게 푸는 법은 무궁무진하구나. let a.. 2022. 1. 8.
[220108] Lv.1 / 하샤드의 수 문제 사이트 : https://programmers.co.kr/learn/courses/30/lessons/12947 코딩테스트 연습 - 하샤드 수 양의 정수 x가 하샤드 수이려면 x의 자릿수의 합으로 x가 나누어져야 합니다. 예를 들어 18의 자릿수 합은 1+8=9이고, 18은 9로 나누어 떨어지므로 18은 하샤드 수입니다. 자연수 x를 입력받아 x가 하 programmers.co.kr 내 풀이 let num=10; function solution(num){ let arr = new String(num); let len=arr.length; let sum=0; let answer=true; for(let i=0; i0); return !(num%sum) //나머지가 0일경우 true를 반환, 아닐 경우.. 2022. 1. 8.
[220108] Array, fill, 덧셈 삼대장(map, reduce, forEach) 목차 1. array 2. fill 3. 덧셈 삼대장 Array ( 집어넣을 요소 | 생성할 빈 배열 수) Array( element1, element2... | arrayLength ) : 생성자 새로운 array 객체를 생성할때 사용 element1, element2... : array / 안에 채울 요소, 만약 자료형이 숫자이고 단 하나일 경우 arrayLength로 넘어간다 arrayLength : 유일한 매개변수가 2^32-1 이하의 정수인경우, 그 수 만큼의 빈 배열을 갖게된다. let arr1 = Array(2) //[ 빈 요소, 빈 요소 ] let arr2 = Array('apple', 'pear') //['apple', 'pear] fill (채울 값, 시작 인덱스 번호, 끝 인덱스 번호.. 2022. 1. 8.
[220107] Lv.1 / 핸드폰 번호 가리기 해당 문제 주소 : https://programmers.co.kr/learn/courses/30/lessons/12948 splice를 사용해보려고했는데, 문자열이라서 사용이 안된다고한다. 배열만 가능하대. 아 그럼 배열로 만들어. for문만 사용해서 풀기 let phone="01033334444" let phoneArr=[] for(let i=0; i 2022. 1. 7.