자바스크립트 98

[백준/ node.js] 배열 - 2562번 최댓값

https://www.acmicpc.net/problem/2562 2562번: 최댓값 9개의 서로 다른 자연수가 주어질 때, 이들 중 최댓값을 찾고 그 최댓값이 몇 번째 수인지를 구하는 프로그램을 작성하시오. 예를 들어, 서로 다른 9개의 자연수 3, 29, 38, 12, 57, 74, 40, 85, 61 이 주어 www.acmicpc.net 문제 9개의 서로 다른 자연수가 주어질 때, 이들 중 최댓값을 찾고 그 최댓값이 몇 번째 수인지를 구하는 프로그램을 작성하시오. 예를 들어, 서로 다른 9개의 자연수 3, 29, 38, 12, 57, 74, 40, 85, 61 이 주어지면, 이들 중 최댓값은 85이고, 이 값은 8번째 수이다. 입력 첫째 줄부터 아홉 번째 줄까지 한 줄에 하나의 자연수가 주어진다. ..

ALGORITHM 2021.06.28

[백준/ node.js] 배열 - 10818번 최소, 최대

10818번 최소, 최대 문제 N개의 정수가 주어진다. 이때, 최솟값과 최댓값을 구하는 프로그램을 작성하시오. 입력 첫째 줄에 정수의 개수 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에는 N개의 정수를 공백으로 구분해서 주어진다. 모든 정수는 -1,000,000보다 크거나 같고, 1,000,000보다 작거나 같은 정수이다. 출력 첫째 줄에 주어진 정수 N개의 최솟값과 최댓값을 공백으로 구분해 출력한다. const input = require('fs').readFileSync('/dev/stdin').toString().split('\n'); const count = input[0]; const nums = input[1].split(' ').map(Number); let max = num..

ALGORITHM 2021.06.27

[javascript] this

this this는 자신이 속한 객체 또는 자신이 생성할 인스턴스를 가리키는 자기참조 변수다. this를 통해 자신이 속한 객체 또는 자신이 생성할 인스턴스의 프로퍼티나 메서드를 참조할 수 있다. this가 가리키는 값, 즉 this 바인딩은 함수 호출 방식에 의해 동적으로 결정된다. *this 바인딩: this(식별자 역할)와 this가 가리킬 객체를 연결하는 과정 // this는 어디서든지 참조 가능하다. // 전역에서 this는 전역 객체 window를 가리킨다. console.log(this); // window function square(number) { // 일반 함수 내부에서 this는 전역 객체 window를 가리킨다. console.log(this); // window return nu..

FRONT/JAVASCRIPT 2021.06.26

[javascript] 빌트인 객체

자바스크립트 객체의 분류 표준 빌트인 객체: ECMAScript 사양에 정의된 객체. 실행환경과 관계없이 항상 사용 가능 호스트 객체: 실행 환경에서 추가적으로 제공하는 객체 사용자 정의 객체: 기본 제공되는 객체가 아닌 사용자가 직접 정의한 객체 표준 빌트인 객체 생성자 함수 객체: String, Number, Boolean, Function, Array, Date 생성자 함수가 아닌 객체: Math, Reflect, JSON 래퍼 객체 원시 값이 있는데도 객체를 생성하는 표준 빌트인 생성자 함수가 존재하는 이유는? 원시 값을 객체처럼 사용하면 자바스크립트 엔진은 암묵적으로 연관된 객체로 변환해준 다음 다시 원시 값으로 되돌리기 때문이다. 이처럼 문자열, 숫자, 불리언 값에 대해 객체처럼 접근하면 생성..

FRONT/JAVASCRIPT 2021.06.26

[백준/ node.js] while문 - 1110번 더하기 사이클

1110번 더하기 사이클 문제 0보다 크거나 같고, 99보다 작거나 같은 정수가 주어질 때 다음과 같은 연산을 할 수 있다. 먼저 주어진 수가 10보다 작다면 앞에 0을 붙여 두 자리 수로 만들고, 각 자리의 숫자를 더한다. 그 다음, 주어진 수의 가장 오른쪽 자리 수와 앞에서 구한 합의 가장 오른쪽 자리 수를 이어 붙이면 새로운 수를 만들 수 있다. 다음 예를 보자. 26부터 시작한다. 2+6 = 8이다. 새로운 수는 68이다. 6+8 = 14이다. 새로운 수는 84이다. 8+4 = 12이다. 새로운 수는 42이다. 4+2 = 6이다. 새로운 수는 26이다. 위의 예는 4번만에 원래 수로 돌아올 수 있다. 따라서 26의 사이클의 길이는 4이다. N이 주어졌을 때, N의 사이클의 길이를 구하는 프로그램을..

ALGORITHM 2021.06.26

[javascript] strict mode란?

strict mode란? function foo(){ x= 10; } foo(); console.log(x); // 10 foo 함수 내에 선언하지 않은 x 변수에 값 10을 할당했다. 자바스크립트 엔진은 먼저 foo 함수의 스코프에서 x변수의 선언을 검색하는데 실패할 것이고, 상위 스코프(전역 스코프)에서 검색한다. 이 때 자바스크립트 엔진은 암묵적으로 전역 객체에 x 프로퍼티를 동적 생성한다. 이러한 현상을 암묵적 전역이라 한다. 이는 오류를 발생시키는 원인이 될 수 있다. 오류를 발생시키기 어려운 개발 환경을 지원하기 위해 strict mode(엄격 모드)가 추가되었다. 적용 전역의 선두 또는 함수 몸체의 선두에 'use strict';를 추가한다. 'use strict'; function foo(..

FRONT/JAVASCRIPT 2021.06.25

[백준/ node.js] while문 - 10951번 A+B-4

10951번 A+B - 4 문제 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. 입력 입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 한 줄로 이루어져 있으며, 각 줄에 A와 B가 주어진다. (0 < A, B < 10) 출력 각 테스트 케이스마다 A+B를 출력한다. const input = require('fs').readFileSync('/dev/stdin').toString().split('\n'); let i=0; while(i Number(x)); a = nums[0]; b = nums[1]; console.log(a+b); i++; } 종료 조건이 없으므로 반복문 조건문에 break문을 꼭 써야 하는 true 대신 배열 input의 인덱스 끝까지..

ALGORITHM 2021.06.25

[javascript] 캔버스(Canvas)로 그림판 만들기(4) 이미지 저장하기

[javascript] 캔버스(Canvas)로 그림판 만들기(1) 캔버스에 선그리기 [javascript] 캔버스(Canvas)로 그림판 만들기(2) 선 색상, 굵기 바꾸기 [javascript] 캔버스(Canvas)로 그림판 만들기(3) 색상 채우기-fillRect() if(saveBtn){ saveBtn.addEventListener("click", handleSaveClick); } 1. canvas의 데이터를 image 처럼 얻기 const image = canvas.toDataURL("image/jpeg"); const image = canvas.toDataURL(); // 디폴트는 png파일이다. HTML.CanvasElement.toDataURL() https://developer.mozil..

FRONT/JAVASCRIPT 2021.06.25

[javascript] 캔버스(Canvas)로 그림판 만들기(3) 색상 채우기-fillRect()

[javascript] 캔버스(Canvas)로 그림판 만들기(1) 캔버스에 선그리기 [javascript] 캔버스(Canvas)로 그림판 만들기(2) 선 색상, 굵기 바꾸기 CanvasRenderingContext2D.fillRect() CanvasRenderingContext2D.fillRect() CanvasRenderingContext2D.fillRect() - Web APIs | MDN The CanvasRenderingContext2D.fillRect() method of the Canvas 2D API draws a rectangle that is filled according to the current fillStyle. developer.mozilla.org 너비 와 높이에 따라 크기가 결..

FRONT/JAVASCRIPT 2021.06.25

[백준/ Javascript] while문 - 10952번 A+B-5

10952번 A+B - 5 https://www.acmicpc.net/problem/10952 10952번: A+B - 5 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. www.acmicpc.net 문제 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. 입력 입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 한 줄로 이루어져 있으며, 각 줄에 A와 B가 주어진다. (0 < A, B < 10) 입력의 마지막에는 0 두 개가 들어온다. 출력 각 테스트 케이스마다 A+B를 출력한다. const input = require('fs').readFileSync('/dev/stdin').toString().split('\n'); let i=..

ALGORITHM 2021.06.24