전체 글

전체 글

    알고리즘 문제풀이 입력 받아오기.

    알고리즘 문제를 풀려면 입력을 받고 출력을 하는게 기본인데 JS를 해본경험이 거의 없기때문에 설명을 봐도 궁금한점이 많아서 좀더 자세히 찾아보았다. 틀린내용이 있을 수 있으나 본인은 이렇게 이해하고 쓰는중..... const testline = require('readline'); require() 함수는 node.js 에서 외부 모듈을 불러오고 싶을때 사용한다. require() 함수를 통해서 readline 이라는 모듈을 불러올 것이다. realine 모듈에는 데이터를 읽어오는데 필요한 기능이 담겨있기 때문이다. testline은 그냥 변수이름이다. 아무거나 편한대로 사용하자. const rl = testline.createInterface({ input: process.stdin, output: p..

    [JS][백준]8393_합

    문제 번호 8393번: 합 n이 주어졌을 때, 1부터 n까지 합을 구하는 프로그램을 작성하시오. www.acmicpc.net 알고리즘 분류 수학, 구현 문제 풀이 const input = require('fs').readFileSync('test.txt').toString().split(' '); var n = parseInt(input[0]); Solution(n); function Solution(n) { var answer = 0; for (let i = 1; i

    객체

    객체 자바스크립트는 객체(object) 기반의 언어이며 자바스크립트를 이루고 있는 거의 "모든 것"이 객체이다. 원시 타입을 제외한 나머지 값들(함수, 배열, 정규표현식 등)은 모두 객체이다. 자바스크립트의 객체는 키(key)와 값(value)으로 구성된 프로퍼티(Property)들의 집합이다. 프로퍼티의 값으로 자바스크립트에서 사용할 수 있는 모든 값을 사용할 수 있다. 자바스크립트의 함수는 일급 객체이므로 값으로 취급할 수 있다. 따라서 프로퍼티 값으로 함수를 사용할 수도 있으며 프로퍼티 값이 함수일 경우, 일반 함수와 구분하기 위해 메소드라 부른다. 객체는 데이터를 의미하는 프로퍼티와 데이터를 참조하고 조작할 수 있는 동작을 의미하는 메소드로 구성된 집합이다. 객체는 데이이터(프로퍼티)와 그 데이터..

    [JS][백준]10950_A+B-3

    문제 번호 10950번: A+B - 3 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. www.acmicpc.net 알고리즘 분류 수학, 구현, 사칙연산 문제 풀이 const { rawListeners } = require('process'); const readline = require('readline'); const rl = readline.createInterface({ input: process.stdin, output: process.stdout, }); let input = []; rl.on('line', function(line){ input.push(line); }).on('close',function (){ let tc = Number(input[0]); f..

    타입 변환

    개발자에 의해 의도적으로 값의 타입을 변환하는 것을 명시적 타입 변환(Explicit coercion) 또는 타입 캐스팅(Type casting)이라 한다. var x = 10; // 명시적 타입 변환 var str = x.toString(); // 숫자를 문자열로 타입 캐스팅한다. console.log(typeof str); // string 동적 타입 언어인 자바스크립트는 개발자의 의도와는 상관없이 자바스크립트 엔진에 의해 암묵적으로 타입이 자동 변환되기도 한다. 이를 암묵적 타입 변환(Implicit coerion) 또는 타입 강제 변환 (Type coercion) 이라고 한다. var x = 10; // 암묵적 타입 변환 // 숫자 타입 x의 값을 바탕으로 새로운 문자열 타입의 값을 생성해 표현식..

    제어문

    if..else문 조건식의 평과 결과가 불리언 값이 아니면 불리언 값으로 강제 변환되어 논리적 참, 거짓을 구별한다. switch 문 switch (표현식) { case 표현식1: switch 문의 표현식과 표현식1이 일치하면 실행될 문; break; case 표현식2: switch 문의 표현식과 표현식2가 일치하면 실행될 문; break; default: switch 문의 표현식과 일치하는 표현식을 갖는 case 문이 없을 때 실행될 문; } while 문 while문의 조건식 평과 결과가 불리언 값이 아니면 불리언 값으로 강제 변환된다. 레이블 문(label statement)이란 식별자가 붙은 문을 말한다. // foo라는 레이블 식별자가 붙은 레이블 문 foo: console.log('foo');..

    데이터 타입

    - Number 자바스크립트는 하나의 숫자 타입만 존재한다. (int, long long 이런거 없음) 모든 수를 실수로 처리한다. - string 문자열은 0개 이상의 16bit 유니코드 문자(UTF-16) 들의 집합으로 대부분의 전세계의 문자를 표현할 수 있다. 문자열은 작은 따옴표 또는 큰 따옴표 안에 텍스트를 넣어 생성한다. 가장 일반적인 표기법은 작은 따옴표를 사용하는 것이다. 자바스크립트의 문자열은 원시 타입이며 변경 불가능하다. 이것은 한 번 문자열이 생성되면, 그 문자열을 변경할 수 없다는 것을 의미한다. var str = 'Hello'; str = 'world'; 이때 문자열 'Hello'와 'world'는 모두 메모리에 존재하고 있다. 변수 str은 문자열 'Hello'를 가리키고 있다..

    기본 문법

    1. 변수 변수(Variable)는 값(value)을 저장(할당)하고 그 저장된 값을 참조하기 위해 사용한다. 한 번 쓰고 버리는 값이 아닌 유지(캐싱)할 필요가 있는 값은 변수에 담아 사용한다. 또한 변수 이름을 통해 값의 의미를 명확히 할 수 있어 코드의 가독성이 좋아진다. 변수는 위치(주소)를 저장하는 저장소이다. 위치란 메모리상의 주소(address)를 의미한다. 즉, 변수란 메모리 주소(Memory address)에 접근하기 위해 사람이 이해할 수 있는 언어로 지정한 식별자(identifier)이다. 변수를 선언할 때 var, let, const 키워드를 사용할 수 있다. var, let, const 차이점 JavaScript에서 변수 선언 방식인 `var, let, const` 의 차이점에 대..