목록분류 전체보기 (887)
치춘짱베리굿나이스

Symbol 뭐 하는 녀석인지? 태초에 자바스크립트는 원시 자료형 5개와 객체 자료형 1개 총 6개의 자료형으로 이루어져 있었다 Number, String, Boolean, null, undefined 그리고 객체 Object가 그것이었는데, ES6 (2015년) 에 원시자료형팀 환상의 식스맨으로 Symbol이 합류했다 심볼은 객체의 고유 식별자로 활용할 수 있는 원시자료형으로, 쉽게 말해 객체 내부 프로퍼티의 키를 설정할 때 사용할 수 있다 심볼을 사용하면 프로퍼티 키가 겹치지 않고 고유한 값으로 설정되므로, 키가 중복으로 설정됨으로써 발생하는 충돌을 막을 수 있다 프론트엔드에서 클래스명을 겹치지 않게 설정하기 위해 CSS module을 사용하거나, CSS-in-JS 라이브러리들 (Styled Comp..

자바스크립트에서의 싱글톤 패턴과 static 싱글톤의 의미 Singleton 이름의 ‘Single’ 에서 뭔가 한 개..? 하나의…? 라는 뜻이 연상된다 싱글톤은 특정 클래스에 인스턴스를 단 하나만 생성 (메모리를 단 한 번만 할당) 하여 사용하는 패턴을 의미한다 (= 메모리를 단 한 번만 할당한다) 특징 인스턴스가 딱 하나만 생성된다 (대개 private, static 등의 키워드를 이용하여 구현한다) ‘단 한 개’ 만 생성되는 인스턴스는 전역으로 참조될 수 있으며, 다른 객체들이 이 공유된 인스턴스에 접근할 수 있어 데이터 공유가 편리하다 메모리를 한 번만 할당하면 되기 때문에 효율이 좋다 인스턴스가 ‘단 하나' 임을 보장하고 싶을 때 주로 사용한다 단점 일반 클래스보다 더 복잡하며, 비동기적인 상황..

근 한두달동안 바쁘다는 걸 핑계로 브론즈 5 ~ 4 문제만 실컷 풀었는데 풀다보니까 이게 뭐하는짓인가 싶더라구요 차라리 이틀걸리더라도 실버3 이상 문제를 푸는 게 나을거같은데... 실력향상엔 도움도 안되는것 같고 그래서 그만두었습니다 그래도 꾸준히 코딩을 한다는 것 자체는 중요한거같아서 깃허브에 매일 잔디심는건 계속 해보려고요

HTTP 기본 HTTP 소개 Hypertext Transfer Protocol 응용 계층 (Application Layer) 에서 사용되는 프로토콜로, 1989년에 팀 버너스 리에 의해 고안되었다 참고로 www랑 URL 개념도 이분이 고안하셨다 역시 CERN인가? 대박천재시다 처음에는 웹 브라우저 - 웹 서버 간 하이퍼미디어 문서 (이름에도 나와있듯, 말그대로 Hypertext 문서) 를 주고받기 위해 만들어진 프로토콜이지만, 지금은 일반 텍스트나 JSON 객체, 이미지 등 미디어 파일들도 주고받을 수 있게 확장되었으며, 어플리케이션이나 IoT 등 웹과 관계없는 분야에서도 이 프로토콜을 이용하여 데이터를 주고받는다 HTTP는 www (월드 와이드 웹) 에 내재되어 있으며, 일반적인 웹 브라우저에는 htt..
HTTP 응답 코드 약간 치트시트 느낌으로 만들어보는 응답 코드 포스팅이다 1XX 요청을 잘 받았고, 요청에 따른 처리를 진행중이라는 의미이다 사용 빈도는 드물지만 가끔 웹소켓 등에서 사용한다 100 Continue 요청에 문제가 없으니 다음 요청을 이어서 보내도 된다는 의미이다 클라이언트에서 더이상 작업할 게 없는 경우, 보통 이 응답은 무시한다 101 Switching Protocols 클라이언트가 요청한 대로 프로토콜을 바꿀 것이라는 의미이다 웹소켓에서 많이 사용한다고 한다 103 Early Hints 서버가 아직 처리를 진행중이긴 하지만, 클라이언트가 미리 자원을 읽을 수 있도록 맛보기를 제공한다 2XX 성공! 요청이 잘 들어왔고, 서버에서 이 요청을 이해했으며 제한 없이 수용될 수 있음을 의미한..
!밀비 급일 문제 당신은 길을 가다가 이상한 쪽지를 발견했다. 그 쪽지에는 암호가 적혀 있었는데, 똑똑한 당신은 암호가 뒤집으면 해독된다는 것을 발견했다. 이 암호를 해독하는 프로그램을 작성하시오. 입력 한 줄에 하나의 암호가 주어진다. 암호의 길이는 500을 넘지 않는다. 마지막 줄에는 "END"가 주어진다. (END는 해독하지 않는다.) 출력 각 암호가 해독된 것을 한 줄에 하나씩 출력한다. 풀이 const terces = () => { let arr = require("fs") .readFileSync("/dev/stdin") .toString() .trim() .split("\n"); const ans = []; for (let str of arr) { if (str === "END") break..

OSI 7계층 프로토콜? 단어 뜻이 규약, 협약으로, 비단 네트워크 뿐만 아니라 여러 분야에서 상호간의 소통 및 교류를 위한 사회적 약속 및 규칙을 의미한다 예를 들어 편지를 부치기 위해 우체국에 가야하는 것도 일종의 프로토콜이라 할 수 있겠다 마찬가지로 네트워크에서의 프로토콜은, 네트워크 환경 내의 모든 기기가 통신하며 데이터를 주고 받기 위한 규약이라고 할 수 있다 네트워크 프로토콜이 정해지지 않을 경우, 각 기기들은 독자적인 방식으로 통신을 시도할 것이고, 그러다 보면 우연하게 보내고자 했던 요청이 잘 도착할 수도 있지만 대부분의 경우 실패할 것이다 따라서 프로토콜을 사전에 정의하여 요청 및 응답의 포맷, 각 이벤트별 행동 등을 사전에 전역으로 정의하여 모든 기기가 해당 규약을 따라 원활히 통신하도..
욱 제 문제 오늘은 운명의 라이벌 권욱과 권제가 숙명의 대결을 펼치는 날이다. 대결 종목은 바로 2019년 천하제일 코딩대회 본선 문제 중 하나인 "욱 제"를 더 빨리 푸는 것이다. 욱과 제는 "욱 제"를 빨리 푸는 능력, 일명 "욱제력"을 가지고 있다. 이 욱제력은 하나의 정수로 수치화할 수 있다. 욱의 욱제력이 A, 제의 욱제력이 B일 때, M을 (B−A) / 400 이라고 하자. 이때 욱이 제를 이길 확률은 1/(1 + (10 ^ M)) 이다. 이 값은 얼마일까? 입력 욱의 욱제력과 제의 욱제력이 한 줄에 주어진다. 욱제력은 0 이상 5,000 이하의 정수이다. 출력 욱이 제를 이길 확률을 출력한다. 정답과의 절대오차 또는 상대오차가 10-4 이하이면 정답으로 인정한다. 풀이 const wookje..