2025/01 33

[javaScript/공부] 화살표 함수, this, 호이스팅을 알아보자

화살표 함수와  this, 그리고 호이스팅 알아보기         화살표 함수? function () {}() => {}위가 전통적 함수 표기법, 아래가 화살표 함수다.화살표 함수가 훨씬 간결해서 저것만 쓰면 안되나? 싶어서 찾아보니,동작 방식에서 차이가 있었다.  01 this 바인딩의 차이this 란, 함수나 메서드 내에서 객체를 참조하는 키워드다. (다음 목차에서 더 설명)function에서는 this가 동적으로 결정된다. 즉 아래와 같이 사용이 가능하다.const obj = { value: 10, example: function () { console.log(this.value); //this는 obj를 가리킴 -> 출력: 10 },};하지만 화살표 함수에서는 상위 컨텍스트의 this를 상..

WEB/javaScript 2025.01.02

[코딩테스트/javaScript] 3진법 뒤집기

어떻게든 패턴 찾고싶어서 공책 펴놓고 이것저것 다 써봤다.............그렇게 찾은 패턴십진수에서 3으로 계속 나누면서 생기는 나머지들 + 마지막으로 나눠지는 수를 이으면 삼진법 뒤집은 모양임for (let i=0; n>=3; i++) { arr.push(n%3) n = Math.floor(n /= 3); } arr.push(n);우선 삼진수로는 만들었다. 그런데 다시 십진수로 만드는 게 또 난관이다.우선 내가 세운 식은,arr[(arr.length-1)-j] * (3 ** j)인데,//예시인 125의 3진수를 뒤집으면 22111이다.let index = arr.length-1; //이라고 가정했을 때//자릿수 * 3의 x제곱arr[index-0] * (3**0..

[코딩테스트/javaScript] 최대공약수와 최소공배수

function solution(n, m) { let answer = []; // 최대공약수 for (let i=n; i우선 최대공약수는 n,m 중 작은 수만큼만 확인하면 돼서, i의 크기를 둘중 아무거나로 지정했다.n과 m의 차가 어마무시하다면 시간이 오래 걸리기 때문에 비교까지 해준 다음에 더 작은 수로 정확히 넣었을듯그리고 최대를 찾는 거기 때문에 하나씩 빼주는 형태로 반복했고,n과 m의 공통된 약수일 때 break를 걸어 가장 큰 약수 하나만 추출하도록 했다. 최소공배수도 마찬가지.최소니까 1부터 시작했고, 최대치로 커봤자 n*m이니까 조건을 그렇게 걸었다.if 조건문에 부합하면 break 걸어서 제일 작은 공배수 추출