오늘 공부한 내용 요약
var a = 1;
console.log(a, this.a); // 1 1
위 같은 형식으로
window.a / this.a / var a / 으로 선언하면
console.log(a,this.a,window.a) 모두 값이 정상적으로 출력되지만
let a / const a / 로 선언하면
console.log(a) 외에 나머지는 window 객체에 프로퍼티로 할당하지 않는다(undefined값이 나옴. )
-> 생각해봤는데 이렇게 되는 이유를 아직 설명 못하겠음. 더 고민필요함
함수를 객체의 프로퍼티에 할당한다고 무조건 메서드가 되는것이 아니라 객체의 메서드로서 호출할 경우에만 메서드로 동작함. 아니면 함수로 동작
(. 여부로 둘을 구분)
this에는 호출한 주체에 대한 정보가 담긴다(메서드로 호출한 경우)
let 는 재선언은 안되고 재할당은 됨 / const는 둘다 안됨 / var은 둘다 됨
const를 기본적으로 사용하되 재할당이 필요한경우 let을 사용
Baekjoon에서 문제풀이
1) 문제 : N을 입력받은 뒤, 구구단 N단을 출력하는 프로그램을 작성하시오. 출력 형식에 맞춰서 출력하면 된다.
첫째 줄에 N이 주어진다. N은 1보다 크거나 같고, 9보다 작거나 같다. 출력형식과 같게 N1부터 N9까지 출력한다.
ex) 2입력시 2 * 1 =2 이런식으로 쭉 출력되야함
고민과정
const fs = require('fs');
const input = readFileSync('/dev/stdin').toString().trim().split();
const N = Math.floor(parseInt(input[0]));
if (N>=1 && N <= 9){
for(let i=1; i <10 ; i++) {
console.log(`${N} * ${i} = ${N * i}`);
}
}
연습해보고 고민해봐도 이게 맞는거 같은데 계속 런타임오류가 남.
fs모듈로 안되는 거 같은데 readline 모듈로 실행해보겠음.
내일 할거
하루 돌아보며 (TMI)
알바 후 늦게부터 시작해 시간이 상대적으로 부족.
기본서 정독중 이제 몇몇 개념들의 정의가 좀더 와닿는 느낌이 들었음.
잠자는 공간 경쟁이 치열해 평소보다 조금 일찍 취침
만족도 : ★☆☆☆☆
공부 출처
BaekJoon
코어 자바스크립트 - 정재남 지음 -
위의 내용은 공부중 본인이 이해한 내용으로 몇몇 틀린 내용이 있을 수 있습니다.
회독중 발견시 수정하겠습니다