목록2022/07 (62)
치춘짱베리굿나이스
하루의 절반이상을 자바스크립트와 함께하는, (웃음) 코딩잘하구싶다... 아직 배울게너무많고 갈길이멀다는것을 절절이깨닫는 요즘이다
Darius님 한타 안 함? 문제 아무래도 우리 팀 다리우스가 고수인 것 같다. 그의 K/D/A를 보고 그가 「진짜」인지 판별해 보자. K+A { let [k, d, a] = require("fs") .readFileSync("/dev/stdin") .toString() .trim() .split("/") .map(Number); if (d === 0 || k + a < d) console.log("hasu"); else console.log("gosu"); }; darius(); 반성회 점수보다 kda가 더 중요해요 탑은
프로토타입 기반 언어 프로토타입 기반 언어? 자바스크립트에 클래스… 문법이 있긴 하지만 이건 ES6에 와서야 생긴 문법이고, 근본적으로 자바스크립트에는 클래스 개념이 없다고 보아야 맞다 대신 자바스크립트에는 프로토타입 개념이 있어 이를 이용하여 클래스를 흉내낼 수 있다 프로토타입 기반 언어는 객체의 원형인 프로토타입을 선언하고, 이 프로토타입 객체를 이용하여 새로운 객체를 만들어낸다 = 클래스랑 비슷한 방식으로 동작하는 것이다! 자바스크립트에서 함수는 객체인가요? 자바스크립트의 대부분 요소는 객체인가요? 자바스크립트의 대부분 요소는 객체인가요? 자바스크립트의 대부분 요소는 객체인가요? 전혀 관계없는 거 (함수 관련) 검색하다가 함수는 객체라는 글을 보고 꽂혀서 배열도? 클래스도? 하면서 찾아보니까 다 객..
객체지향 올 것이 왔다 자바스크립트 프로그래밍을 하면서 그 편의성 때문에 클래스를 종종 이용하는데, 물론 잘 알고 쓰는 것은 아니다 심지어 자바스크립트의 클래스는 정석적인 클래스도.. 아니었다고 한다 (하하) 간단하게나마 정리하고 적어도 왜 쓰는지는 알고 쓰는 것이 좋겠다 객체지향? 기존에는 프로그램을 명령어들의 집합이라고 생각했다면, 객체 지향 프로그래밍은 모든 데이터를 객체 (object) 취급한다 프로그래밍에서 필요한 모든 데이터들을 추상화시켜 상태와 행위를 가진 객체로 만들고, 객체들을 이리저리 조합하여 객체간 상호작용을 통해 프로그램을 구성한다 말 그대로 객체를 지향하는 프로그래밍인데, 지향이라고 하니까 좀 헷갈릴 수 있다 객체를 주축으로 사용하는 프로그래밍 방법론이라고 생각하자 객체지향의 특징..
자바스크립트의 대부분 요소는 객체인가요? 전혀 관계없는 거 (함수 관련) 검색하다가 함수는 객체라는 글을 보고 꽂혀서 배열도? 클래스도? 하면서 찾아보니까 다 객체였다 오죽하면 저 문장이 자동완성이 될까 싶어서 토막글로 기록해본다 사실 좀많이놀랐음 자바스크립트에서는 함수도 객체 취급된다 엄밀히 따지자면 자바스크립트에서 함수는 속성과 메서드를 가질 수 있는 일급 (first-class) 객체이고, 호출할 수 있다는 특징을 가지고 있으며, Function 생성자로 만들어진 객체이다 배열도 함수처럼 특별한 유형의 객체이다 자바스크립트에서 클래스는 class 키워드로 선언되었을 뿐인 함수이기 때문에 클래스도 객체다 사실상 원시 요소 (primitives) 를 제외하면 거의 다 객체이고, 이 원시 요소들마저도 객..
연세대학교 문제 연세대학교의 영문명은 YONSEI, 슬로건은 Leading the Way to the Future이다. 이를 출력하는 프로그램을 작성해보도록 하자. 입력 첫째 줄에 N이 주어진다. (N = 0 또는 1) 출력 N = 0일 경우: 연세대학교의 영문명을 출력한다. N = 1일 경우: 연세대학교의 슬로건을 출력한다. 대소문자 구별에 주의하도록 하자. 풀이 const yonsei = () => { let input = require("fs").readFileSync("/dev/stdin").toString().trim(); console.log(input === "0" ? "YONSEI" : "Leading the Way to the Future"); }; yonsei();
다른 파일에서 함수 가져오기 작업을 하다 보면 한 파일에 함수가 매우매우매우매우… 많아져서 보기 싫어질 때가 많다 파일을 분리하고, 해당 파일에서 함수를 불러오는 식으로 작업하면 한 파일당 한두 개의 함수에 집중할 수 있기 때문에 코드가 깔끔해진다 프론트엔드 컴포넌트를 만들 때도 거의 무조건 (특정 컴포넌트 안에서만 사용되는 한두줄짜리 컴포넌트가 아닌 이상) 한 파일에 컴포넌트 1개 룰을 지키면서 코딩하다 보니 이제 각 파일별로 주제가 명확하지 않으면 코드 읽기가 어려운 지경에 왔다 다른 파일에서 모듈을 불러오는 방법은 크게 두 가지가 있는데, require와 import이다 사실 다른 게시글에서 적었지만 정보가 상당히 빈약해서.. 삭제 후 더 자료검색해서 새로 작성하였다 require const Rea..
팬들에게 둘러싸인 홍준 문제 홍준은 참 팬이 많다. 이를 본 구사과는 BOJ 슬랙에서 이모티콘을 만들었다. 선풍기 모양의 이모티콘은 :fan: 이고, 홍준의 이모티콘은 :(홍준의 아이디): 이다. 홍준의 아이디가 주어지면 구사과가 만든 이모티콘을 출력하는 프로그램을 작성하여라. 자세한 출력 방식은 입출력 형식을 참고하면 된다. 입력 첫 번째 줄에 홍준의 아이디를 입력받는다. 홍준의 아이디는 길이가 20 이하인 문자열이며, 알파벳 소문자, 알파벳 대문자, 숫자로만 이루어졌다. 출력 3개의 줄에 걸쳐, 팬들에게 둘러싸인 홍준의 모습을 출력한다. 풀이 const apple = () => { console.log(`:fan::fan::fan: :fan::${require("fs").readFileSync("/d..