1. 다음 코드에서 콘솔 로그로 출력되는 값을 입력하세요. let value = 0; if (true && false) value += 1; if (true || false) value += 2; if (0 && "abc") value += 10; if (123 && "") value += 20; if (0 || "" || true) value += 40; console.log(value); // 42 1. if (true && false) value += 1; // false -> && 논리 AND 연산자. 2. if (true || false) value += 2; // true -> || 논리 OR 연산자. 3. if (0 && "abc") value += 10; // false -> 0 = fal..
Programming language
1. 다음 중 문자열을 표현하는 방식으로 잘못된 것은? const v1 = 'abc'; const v2 = "abc"; const v3 = \abc\; const v4 = `abc`; -> '', "", ``로 문자열을 표현할 수 있다. 2. 다음 세 변수(v1, v2, v3) 중에서 하나만 값이 다르다. 어떤 변수인가? const name = 'mike'; const age = 23; const v1 = 'name: ' + name + ', age: ' + age; const v2 = "name: ${name}, age: ${age}"; const v3 = `name: ${name}, age: ${age}`; -> ``을 사용할 때 ${}로 v1과 같은 표현을 할 수 있다. 3. 다음 코드에 대한 설명..
1. 나머지 매개변수 let test = function (a, b, ...theArgs) { return theArgs; }; console.log(test(1, 2, 3, 4, 5)); // [ 3, 4, 5 ] spread연산자와 유사하게 rest parameter를 사용할 수 있다. 2. Reduce 함수 arr = [1, 2, 3, 4, 5].reduce((acc, curr, idx, arr) => { // acc = 누산기 (순회하면서 계속 더해지는 값) // curr = 현재 값 // idx = 현재 인덱스 // arr = 참조한 배열 return acc + curr; }, 0 /* 최초 호출에서 acc누산기에 제공하는 값, 제공하지 않으면 배열의 첫 요소 사용 */); console.log..
https://inflearn-quiz.vercel.app/javascript/4-number 실전 자바스크립트 퀴즈 문제 1 다음 코드에서 변수 v1에 저장되는 값은? undefined123NaNabc 문제 2 다음 코드에 대한 설명으로 옳은 것은? 'divide by zero' 에러가 발생한다v1은 0이 된다v1은 NaN이 된다v1은 무한대를 표현하는 값이 inflearn-quiz.vercel.app 1. 다음 코드에서 변수 v1에 저장되는 값은? const v1 = Number.parseInt('abc123'); -> 숫자가 아닌 값에 연산을 수행하거나 0을 0으로 나누면 NaN이 출력된다. ex) 0/0, 100 / 'hello' 2. 다음 코드에 대한 설명으로 옳은 것은? const v1 = 1..
https://inflearn-quiz.vercel.app/javascript/3-types 실전 자바스크립트 퀴즈 문제 1 다음 중 typeof 결과값이 다른 것은? typeof {}typeof nulltypeof []typeof function(){}typeof new Number(1) 문제 2 다음 중 typeof로 정확한 타입을 검출하지 못할 때 사용하면 도움이 되는 것은? Object.prototype.toS inflearn-quiz.vercel.app 1. 다음 중 typeof 결과값이 다른 것은? console.log(typeof {}); // object console.log(typeof null); // object console.log(typeof []); // object consol..
https://inflearn-quiz.vercel.app/javascript/2-const-let 실전 자바스크립트 퀴즈 문제 1 다음 코드의 실행 결과는? 참조 에러가 발생한다0이 출력된다undefined가 출력된다 문제 2 다음 중 const, let, var에 대한 설명으로 틀린 것은? const, let은 블록 스코프이다const, let은 호이스팅이 inflearn-quiz.vercel.app 1. 다음 코드의 실행 결과는? if (true) { const i = 0; } console.log(i); let과 const는 블록 스코프를 가지고 있기 때문에 블록 밖에서 참조 에러가 발생한다. var로 선언 하였다면 참조 에러가 발생하지 않고 0이 출력된다. ☆블록 스코프(Block Scope):..
https://inflearn-quiz.vercel.app/javascript/1-var 실전 자바스크립트 퀴즈 문제 1 다음 코드 실행 시 콘솔에 출력되는 값은? 1undefined참조 에러가 발생한다 문제 2 다음 코드 실행 시 마지막에 10이 출력된다. for 문을 즉시 실행 함수로 감싸서 실행했을 때 예상되는 결과는 inflearn-quiz.vercel.app 1. 다음 코드 실행시 콘솔에 출력되는 값은? function example() { var i = 1; } example(); console.log(i); '해당 스코프'가 아닌 function 내부에 var이 선언되어 있기 때문에 ReferenceError: i is not defined가 발생한다. '해당 스코프'가 아니기 때문에 호이스..

피드를 보여줄때 opengraph를 함께 보여주기 위해 open-graph-scraper 모듈을 사용했다. 1. 공식문서 보고 ogs 모듈 동작시키기 import { RequestHandler } from "express"; import ogs from "open-graph-scraper"; import Feed from "../models/feed"; let options = { url: "https://naver.com/" }; const scrapOg: RequestHandler = async (req, res, next) => { try { // const options = { url: req.body.options }; await ogs(options).then((data) => { const ..
https://github.com/ChangSuLee00/CS-study/blob/main/javascript/scope.md GitHub - ChangSuLee00/CS-study Contribute to ChangSuLee00/CS-study development by creating an account on GitHub. github.com 스코프 (scope) 변수에 접근할 수 있는 범위, 유효 범위 var과 let, const var 함수 스코프(bunction Scope)의 변수 생성된 함수 내부에서만 사용할 수 있다. 만약 함수 내부에서 생성되지 않은 경우 전역 스코프이다. let, const 블록 스코프(block scope)의 변수 함수 스코프만 스코프로 처리되는 var과 달리 블록 스코..
https://github.com/ChangSuLee00/CS-study/blob/main/javascript/Execution%20context.md GitHub - ChangSuLee00/CS-study Contribute to ChangSuLee00/CS-study development by creating an account on GitHub. github.com 실행 컨텍스트 소스 코드를 실행하는데 필요한 환경을 제공하고 코드 실행 결과를 실제로 관리하는 영역 실행 컨텍스트를 설명하기 위해 다음을 예시로 든다. var v1 = 10; const c1 = 20; function f1(a) { const c2 = 30; b = c2 + 10; function f2(b) { console.log(b)..