목록what I Learnd (71)
HANA -J
>항해 3주차 node.js 기초학습 1. Node.js ? 노드는 자바스크립트 런타임환경이다. 웹서버와 같은 확장성 있는 네트워크 프로그램을 제작하기 위해 사용된다. 서버가 아니다! 서버의 역할을 수행할 수 있을 뿐 , 서버 실행을 위해 http/https모듈을 제공한다. Express라는 웹 프레임워크를 표준처럼 사용한다. npm(node package manager)를 통해 패키지를 관리할 수 있다.(현재는 node.js 를 다운받으며 자동으로 설치가 된다. 2. Node.js 특징 이벤트 기반 : 이벤트가 발생할 때 미리 지정해둔 작업을 수행한다. 논블로킹 : 오래 걸리는 함수를 백그라운드로 보내서 다음 코드가 먼저 실행되게 하고, 나중에 오래 걸리는 함수를 실행한다. >논 블로킹 방식의 일부 코..
> 2021/11/08 - 2021/11/13 >JavaScript 1. ECMAScript? ECMAScript는 자바스크립트의 토대를 구성하는 스크립트 프로그래밍 언어 명세 이다. 자바스크립트를 표준화하기 위해 만들어졌다. 2. 스크립트 언어? 프로그래밍 언어의 한 종류로, 기존에 이미 존재하는 소프트웨어를 제어하기 위한 용도로 쓰이는 언어이다. 응용 소프트웨어는 컴파일러를 사용하는 언어에 의해 기계어로 번역되어 실행되기 때문에, 수정이 필요하면 컴파일을 다시해주어한다. 이 때문에 수정이 빈번하게 발생하는 부분을 바로 수정해주기위해 많이 사용한다. 응용 소프트웨어에서 스크립트 언어에 맞는 API를 제공하고 소프트웨어와 상호작용하며 작동한다. 인터프리터 언어와 다르다 !! 스크립트 언어 용도상 인터프리..
>자바스크립트 정리 1편 1. 함수의 호출스택 - Anonymous는 가상의 전역컨택스트로(함수의 호출이 있기전에 항상 있다고 생각하면 된다.) - 함수호출 순으로 쌓이고 역순으로 실행한다. - 함수 실행이 완료되면 스택에서 빠진다. - LIFO구조라서 스택이라 부른다.(호출스택,,) 2. 이벤트 루프 - 호출스택과 백그라운드, 데스크큐로 기능이 실행되는 순서 자체를 이벤트 루프라고 부른다. 1. 호출 스택에 실행할 함수가 쌓임 2. 여기서 실행되는 함수가 비동기함수이면 백그라운드로 이동하게 된다. ( 코드가 백그라운드로 가면 호출스택의 함수와 동시에 실행이 가능하다.) 3. 백그라운드에서 태스크큐로 보낸다( 만약, setTimeout실행시는 그 시간만큼 이후에 보내짐) 4. 호출스택실행이 끝나서 비워지..

>알고리즘 5일차 1. 3진법 뒤집기 > 문제설명 : 자연수 n이 매개변수로 주어집니다. n을 3진법 상에서 앞뒤로 뒤집은 후, 이를 다시 10진법으로 표현한 수를 return하도록 solution함수를 완성해주세요. 2. 최소직사각형 >입출력 예 [[10, 7], [12, 3], [8, 15], [14, 7], [5, 15]] 120 [[14, 4], [19, 6], [6, 16], [18, 7], [7, 11]] 133 [[60, 50], [30, 70], [60, 30], [80, 40]] 4000 function solution(sizes) { var answer = 0; let ex= 0; let ex1=0; var min ; var max; for(let i=0; i{return Math.ma..

알고리즘 4일차 > 오늘부터 챌린지 딱 5개만 풀고 나머지 복습해야지 했는데... 4문제풀었다 😑 1. 제일 작은 수 제거하기 > 문제 설명 : 정수를 저장한 배열, arr 에서 가장 작은 수를 제거한 배열을 리턴하는 함수, solution을 완성해주세요. 단, 리턴하려는 배열이 빈 배열인 경우엔 배열에 -1을 채워 리턴하세요. 예를들어 arr이 [4,3,2,1]인 경우는 [4,3,2]를 리턴 하고, [10]면 [-1]을 리턴 합니다. 처음에 시도는 배열을 sort()해서 최소값을 찾아서 배열에서 삭제하려 했는데 ! 실패했다 문제 조건에 배열의 index값이 바뀌면 안된다고 적혀있다.. 그래서 최소값을 찾아서 찾은값만 filter함수로 찾아서 그 값을 제외한 새로운 배열을 생성해서 풀었다. 2. 콜라츠 ..

알고리즘 3일차 >오늘도 9문제 3문제풀이 1. 문자열 다루기(match함수) >문제 설명 : 문자열 s의 길이가 4 혹은 6이고, 숫자로만 구성돼있는지 확인해주는 함수, solution을 완성하세요. 예를 들어 s가 "a234"이면 False를 리턴하고 "1234"라면 True를 리턴하면 됩니다. 정규표현식을 이용해서 s배열에서 숫자가 아닌값을 찾아서 matches_array이라는 새로운 배열을 생성했다. 콘솔로 출력해보면 만약 'a123'이라는 값을 solution함수가 받아오면 matches_array는 ['a']라는 배열이 생성이된다. 그리고 배열의 길이를 체크하고, 영어가 있는지 없는지 확인해서 T/F를 반환한다. 2. 서울에서 김서방찾기(indexOf함수) > 문제설명 : String형 배열 ..

알고리즘 2일차 >오늘은 9문제를 풀고 3문제 설명하는 방식으로 진행했다. 1. 핸드폰 번호가리기 (slice메서드) > 코드설명 =>phone_number.slice로 뒤에번호를 잘라서 새로운 변수(last_number)에 담기, 마지막 4개숫자 빼고 나머지 숫자 *로 변경해서 새로운 변수(number1)에 담기, 새로생긴 변수를 concat함수로 이어서 string생성 2. 부족한 금액 계산하기 (이제껏 푼 문제중 가장 빨리 풀었다...) >입출력 예 설명 : 이용금액이 3인 놀이기구를 4번 타고 싶은 고객이 현재 가진 금액이 20이라면, 총 필요한 놀이기구의 이용 금액은 30 (= 3+6+9+12) 이 되어 10만큼 부족하므로 10을 return 합니다. 3. 내적 (reduce함수) >내적 공식은..

항해 2주차 - 알고리즘 주차 시작!! > 오늘은 첫날이라 7문제풀고 2문제 설명했고 내일부터 9문제풀고 3문제 설명하는 식으로 진행할 계획을 세웠다. 1. 가운데 글자 가져오기 (substr메서드) 2. 없는 숫자 더하기 (reduce 메서드) > 여기서 삽질을 엄청 오래했다... 1 ~9까지 존재하지 않는 숫자를 찾아서 do while문으로 해결이 가능할까? 라는 생각으로 문제에 접근했는데 도저히 없는 숫자를 구하는 법을 몰라서 여기서 정말 문제만 푸는 코드를 작성했다. 무조건 숫자가 1~9라는 가정하에 다 더한 숫자 45에서 있는 숫자빼기... > reduce메서드 (시작값을 명시해 주는게 좋다!) arr.reduce(function add(sum, currValue){ return sum+curr..