-
[Javascript] callback 함수와 callback 지옥IT&컴퓨터공학/Javascript 2021. 1. 21. 13:10
Javascript 는 기본적으로 synchronous ( 동기적 ) 이다 즉 , *호이스팅 되고나서 순서에 따라 하나하나씩 실행된다 *호이스팅 : var 변수 / function declaration 들이 자동으로 제일 위로 올라가는 것 callback function 자바스크립트의 asynchronous ( 비동기성 ) 을 표현하는 가장 일반적인 기법 → 파라미터로 함수를 전달하는 함수 Synchronous callback console.log('1'); setTimeout( () => console.log('2'), 1000 ); // 1초뒤에 2를 출력해라 console.log('3'); function printImmediately(print){ print(); } printImmediately..
-
[React] Hook 이란 ?IT&컴퓨터공학/React&ReactNative 2021. 1. 19. 23:30
Hook 이란 함수 컴포넌트에서 React state와 생명주기 기능(lifecycle features)을 “연동(hook into)“할 수 있게 해주는 함수입니다. Hook은 class 안에서는 동작하지 않습니다. 대신 class 없이 React를 사용할 수 있게 해주는 것입니다. Hook 을 이용해서 Class 를 작성할 필요없이 상태값과 여러 React 의 기능등을 사용할 수 있다 Hook 의 종류 State Hook : 가장 기본적인 Hook . 함수형 컴포넌트에서도 가변적인 상태를 지니고 있을 수 있게 해줌 위에서 useState 가 바로 hook 이다. useState 는 현재의 state 값과 이 값을 업데이트하는 함수를 쌍으로 제공한다. 위의 예제에서 현재의 state 값은 count , ..
-
[Javascript] var 변수의 특징과 const, let 의 차이점IT&컴퓨터공학/Javascript 2021. 1. 18. 22:46
var 1. function 단위의 scope 를 가진다. var str = "hello !"; function func(){ var str = "hello in function !" console.log(str); } console.log(str); // 결과 : hello ! func(); // 결과 : hello in function ! - 위의 코드에서 볼 수 있듯이 function 안에있는 var 변수의 유효범위는 ' function 내 ' 이다 var str = "hello !"; if(true){ var str = "hello in if sentence!"; } console.log(str); // 결과 : hello in if sentence! - var 변수의 유효범위는 { } 안이 아니..
-
[Javascript] 화살표 함수 와 일반 함수IT&컴퓨터공학/Javascript 2021. 1. 18. 22:05
1. 일반 함수와 화살표 함수 표현 매개변수가 없을때 // 일반함수 function foo(){ const a = 5; const b = 10; console.log(a+b); return (a+b); } foo(); // 화살표함수 var foo = () =>{ const a = 5; const b = 10; console.log(a+b); } foo(); 매개변수가 있을때 // 일반함수 function foo(a,b){ console.log(a+b); } foo(10,100); // 화살표함수 var foo = (a,b) => { console.log(a+b); } foo(10,100); 더 간편하게 쓰는 화살표함수 // 기본 화살표함수 var foo = (a,b) => { return (a+b); ..
-
[알고리즘]Level2 ) [3차]파일명 정렬 - C++IT&컴퓨터공학/자료구조&알고리즘 2021. 1. 17. 22:46
파일명 정렬 세 차례의 코딩 테스트와 두 차례의 면접이라는 기나긴 블라인드 공채를 무사히 통과해 카카오에 입사한 무지는 파일 저장소 서버 관리를 맡게 되었다. 저장소 서버에는 프로그램의 과거 버전을 모두 담고 있어, 이름 순으로 정렬된 파일 목록은 보기가 불편했다. 파일을 이름 순으로 정렬하면 나중에 만들어진 ver-10.zip이 ver-9.zip보다 먼저 표시되기 때문이다. 버전 번호 외에도 숫자가 포함된 파일 목록은 여러 면에서 관리하기 불편했다. 예컨대 파일 목록이 [img12.png, img10.png, img2.png, img1.png]일 경우, 일반적인 정렬은 [img1.png, img10.png, img12.png, img2.png] 순이 되지만, 숫자 순으로 정렬된 [img1.png, im..
-
[알고리즘] C++ STL ) sort 와 stable_sort 의 차이IT&컴퓨터공학/자료구조&알고리즘 2021. 1. 17. 22:33
sort : 퀵 소트 기반 알고리즘 : 정렬 알고리즘 중에서 인덱스가 변경되는 알고리즘 ex ) selection , quick, heap sort 의 경우 unstable 하다. 특히, 각 문자가 같은 경우 뭐가 앞으로 올지 알 수 없음 ! stable_sort : 머지소트 기반 알고리즘 -> 즉 안정적인 정렬 ( 같은 원소값의 순서 보장 ) 이 필요하면 이걸 사용하자 ! 일반적으로 sort 가 더 빠르긴 하다
-
[알고리즘] Level 2 ) 짝지어 제거하기 - C++IT&컴퓨터공학/자료구조&알고리즘 2021. 1. 14. 19:23
문제 설명 짝지어 제거하기는, 알파벳 소문자로 이루어진 문자열을 가지고 시작합니다. 먼저 문자열에서 같은 알파벳이 2개 붙어 있는 짝을 찾습니다. 그다음, 그 둘을 제거한 뒤, 앞뒤로 문자열을 이어 붙입니다. 이 과정을 반복해서 문자열을 모두 제거한다면 짝지어 제거하기가 종료됩니다. 문자열 S가 주어졌을 때, 짝지어 제거하기를 성공적으로 수행할 수 있는지 반환하는 함수를 완성해 주세요. 성공적으로 수행할 수 있으면 1을, 아닐 경우 0을 리턴해주면 됩니다. 예를 들어, 문자열 S = baabaa 라면 b aa baa → bb aa → aa → 의 순서로 문자열을 모두 제거할 수 있으므로 1을 반환합니다. 제한사항 문자열의 길이 : 1,000,000이하의 자연수 문자열은 모두 소문자로 이루어져 있습니다. ..
-
[알고리즘]Level2 ) 피보나치 수IT&컴퓨터공학/자료구조&알고리즘 2021. 1. 14. 14:26
문제 설명 피보나치 수는 F(0) = 0, F(1) = 1일 때, 1 이상의 n에 대하여 F(n) = F(n-1) + F(n-2) 가 적용되는 수 입니다. 예를들어 F(2) = F(0) + F(1) = 0 + 1 = 1 F(3) = F(1) + F(2) = 1 + 1 = 2 F(4) = F(2) + F(3) = 1 + 2 = 3 F(5) = F(3) + F(4) = 2 + 3 = 5 와 같이 이어집니다. 2 이상의 n이 입력되었을 때, n번째 피보나치 수를 1234567으로 나눈 나머지를 리턴하는 함수, solution을 완성해 주세요. 제한 사항 * n은 1이상, 100000이하인 자연수입니다. 입출력 예 3 2 5 5 입출력 예 설명 피보나치수는 0번째부터 0, 1, 1, 2, 3, 5, ... 와 ..