본문 바로가기

패스트캠퍼스19

[JS] 정규표현식 정규표현식(정규식)이란, 문자열에서 특정 문자 조합을 찾기 위한 패턴이다. JS 고유의 문법은 아니고 대부분의 프로그래밍 언어와 코드 에디터에 내장되어 있다. 표준 내장 객체인 RegExp의 메서드 exec(), test()와 표준 내장 객체인 String의 메서드 match(), matchAll(), replace(), replaceAll(), search(), split()와 함께 사용할 수 있다 ! 정규식은 문자열을 대상으로 다음과 같은 패턴 매칭 기능을 제공한다. 1. 문자 검색(search) 2. 문자 대체(replace) 3. 문자 추출(extract) 정규 표현식 객체(RegExp 객체)를 생성하기 위해서 다음의 두 가지 방법이 있다. 1. 리터럴 방식 : 슬래시(/)로 시작과 종료를 나타내.. 2022. 12. 23.
JS로 OMDb API 사용하기 API란? Appication Programming Interface 두 소프트웨어(App)의 구성 요소가 프로토콜(통신규약) 집합을 사용하여 서로 요청과 응답하며 통신할 수 있게 되는 방법에 대해 정의해 놓은 것으로 그 정보는 API 문서에 들어 있다. API는 생성 시기와 생성 이유에 따라 네 가지 방식으로 작동할 수 있다. 1. SOAP APIs : 단순 객체 접근(Simple Object Access) 프로토콜을 사용하는 API로, XLM을 사용하여 메세지를 교환. 과거에 더 많이 사용되었으며 유연성이 떨어진다. 2. RPC APIs : 원격 프로시저 호출이라고도 불리는 이 API는 클라이언트가 서버에 대한 함수나 프로시저를 마치고, 서버는 클라이언트에게 다시 결과를 보낸다. 3. Websocke.. 2022. 12. 16.
[KDT JS] Node.js Node.js: JS가 동작할 수 있는 웹브라우저와 같은 런타임(프로그래밍 언어가 동작하는 환경)으로, Chrome V8 JS 엔진으로 빌드된, 웹페이지를 제작할 컴퓨터를 JS로 제어할 수 있는 JS 런타임 cf. 웹브라우저에서는 HTML, CSS, JS만 동작한다. Node.js에서 모듈의 도움을 받아 웹 개발을 하고, 웹브라우저가 인식할 수 있는 HTML, CSS, JS 형식으로 JS로 작성된 프로그램을 변환하는 환경 또한 Node.js이다. https://nodejs.org/en/ Node.js Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine. nodejs.org LTS(Long Term Supported) 버전은 장기.. 2022. 12. 6.
[알고리즘 자습] 문제 해결 접근법 알고리즘이란? 특정 작업을 달성하기 위한 혹은 문제를 해결하기 위해 수행해야 하는 일련의 과정이나 단계를 의미한다. 알고리즘 문제를 풀기 위해, 1. 문제 해결을 위한 계획을 생각해본다. 2. 일반적인 문제 해결 패턴을 파악하고 익힌다. 1. 문제의 이해 ① 내 자신의 말로 문제를 다시 파악하고 설명해보도록 한다. ② 문제에 사용되는 입력값들은 무엇인지 파악한다. ③ 문제의 해답으로 나와야하는 출력값들은 무엇인지 파악한다. ④ 입력값이 출력값을 결정하게 되는지, 문제를 해결할 정보가 충분히 주어졌는지 생각해본다. ⑤ 문제로 제시된 데이터들 중 중요한 부분들이 무엇인지, 어떻게 분류해야 할지, 어떤 이름(용어)을 붙일지 생각해본다. ex) 두 수를 가지고 그들의 총합을 반환하는 함수를 작성하라. ① 내 자.. 2022. 11. 30.
[알고리즘 자습] 빅오 표기법(big O notation), 로그(Logarithms) 프로그램의 연산자의 개수로 계산 1. 상수 개의 연산자 : O(1) ... 처리할 자료 개수 n개에 영향받지 않음. ex) 산술 연산자, 변수 할당, 인덱스를 사용한 배열 요소로의 접근이나 키를 이용한 객체 요소로의 접근, 2. 계수 x의 크기에 상관없이 xn 개의 연산자 : O(n) => 빅오 표현식의 단순화 ... ex) 반복문 but 반복문 조건에 따라 다름 ! 3. 계수 x의 크기에 상관없이 x*n*n 개의 연산자 : O(n^2) => 빅오 표현식의 단순화, 최고차항 ... ex) 중첩(nested) 반복문 입력(n)이 커질수록 알고리즘이 얼마나 얼마나 공간을 많이 사용하게 되는지 cf. 보조 공간 복잡도(auxiliary space complexity) : 입력(n)은 제외하고 알고리즘 자체가 .. 2022. 11. 25.
[백준] 기본 탐색 - 기초 문제 (1543, 1568, 1302, 1668, 1236) 1543번 문서 검색 ◈ 생각해야할 포인트 - 문서의 길이는 최대 2,500이고 단어의 길이는 최대 50로 다루어야할 데이터 양이 적으므로 시간복잡도에 구애받지 않고 문제를 풀면 되겠다. - 문서의 길이 * 단어의 길이로 모든 경우를 살펴보는 시간복잡도 O(NM)의 프로그램 작성해도 괜찮겠다. 1568번 새 문제이해 : 새가 14마리가 있을 때 1부터 숫자를 외치는데 1을 외칠 때는 한 마리가 날아가면서 외치고, 2를 외칠 때는 두 마리가 날아가고 하다가 4를 외칠 때에는 10마리가 날아가 4마리 밖에 안남아서 그 다음 수 5를 외칠 수가 없다. 그래서 다시 처음인 1부터 외치면서 1마리, 그 다음에 2마리가 날아가고 남은 한 마리는 다시 1을 외치며 날아가서 총 7번의 횟수를 통해 모든 새가 날아가게 .. 2022. 11. 17.
favicon.ico가 자동으로 뜨지 않을 때 강사님께 문의드려보니 favicon.ico 파일 자체에 문제가 없다면, 브라우저 파비콘 캐시 문제일 수 있습니다. 강력 새로고침(Cmd + Shift + R)을 해보거나 혹은 코드를 추가한 후 브라우저에서 확인하고 다시 코드를 삭제하는 방법을 사용할 수도 있습니다.(그대로 두어도 되고요) 강사님의 답변에 따라 강력 새로고침을 해보니 파비콘이 바로 똬앟 ! 브라우저 캐시 문제인가보다.. 캐시에 대해 몰라 좀 더 알아보고자 조사한 내용은 다음과 같다. 캐시(Cashe)란 무엇일까? 컴퓨터 과학에서 데이터나 값을 미리 복사해 놓는 임시 메모리 장소를 가리킨다. 캐시는 캐시의 접근 시간에 비해 원래 데이터를 접근하는 시간이 오래 걸리는 경우나 값을 다시 계산하는 시간을 절약하고 싶은 경우에 사용한다. 캐시에 데.. 2022. 9. 23.
자바스크립트의 null과 undefined, console.log와 console.dir 자바스크립트에서는 의미가 다소 다르지만, 다른 프로그래밍 언어에서 사용하는 null 외에 특수하게 undefined이라는 자료형이 있다. null은 null 값만을 포함하는 null 자료형으로 분류되고, '존재하지 않는 값(nothing)', '비어 있는(empty) 값', '알 수 없는(unknown) 값'을 나타낸다. undefined와 유사하지만 차이점은 '의도적으로' 값이 없는 것을 의미한다. undefined는 null과 같이, undefined 값 만을 포함하는 undefined 자료형으로 분류되고, '값이 할당되지 않은 상태 값' 즉, 기본값과 같은 의미를 띈다. 변수를 선언하였지만 값을 할당하지 않았으면 그 변수의 값은 undefined로 자동 할당된다. cf. 파이썬의 None 참조 자바.. 2022. 9. 21.
[KDT] HTML 요소의 전역 속성 HTML 요소들은 자기가 사용할 수 있는 속성이 정해져 있다. 하지만, 요소(태그)의 종류와 상관없이 어느 요소에서나 사용할 수 있는 속성이 있는데, 그것을 전역 속성이라고 한다. ㉮ ㉯ ㉰ ㉱ ㉲ ㉳ ㉴ => 이 요소에 잠시 데이터를 저장하기 위한 목적으로 사용하는 속성 사용자가 지정한 color라는 이름으로 데이터(값) red와 yellow를 저장해둘수 있고 이것을 아래 JS 코드에서 보듯이 해당 요소에서 데이터를 찾아 값을 꺼내 활용할 수 있다 ! ※ 위의 JS 코드를 살펴보면 상수 elms는 HTML의 2개의 div 요소를 값으로 갖게 되는 배열이 되고, 배열의 메서드 중 하나인 forEach를 적용하여 배열 요소 각각을 얻어낼 수 있으며, 그렇게 얻어진 각 요소(elm)에 대해 console.l.. 2022. 9. 16.