본문 바로가기

자바스크립트120

[Node.js] REPL 1. REPL 처음부터 영단어가 나와서 놀라실수도 있겠지만, 별 거아닙니다. 그냥 콘솔 상에서 노드를 실행할 수 있게 해주는 것입니다. REPL는 Read Eval Print Loop의 줄임말로, 읽고 해석하고 보여주고 반복한다는 의미입니다. 사용법은 윈도우라면 cmd 맥이나 리눅스는 터미널을 열고 node를 입력합니다. (노드를 설치해야 작동) 그러면 위의 사진과 같이 현재 경로가 사라지고 꺾쇠만 남느데 이러면 사용이 준비가 완료된 것입니다. 이 상태에서 자바스크립트 코드를 입력하면 실행이 되고, 이것이 REPL입니다. 추가적으로 REPL 상태가 아닌 일반 콘솔, 터미널 상태에서 node [js파일 경로]를 입력하면 해당 js파일을 콘솔상에서 실행시켜 볼 수도 있습니다. 2021. 11. 28.
[Node.js] Node.js의 소개와 특징 1. Node.js Node.js(이하 노드)는 Chrome V8 자바스크립트 엔진으로 빌드된 자바스크립트 런타임입니다. 종종 어떤 사람들은 프레임워크라고 보기도 하지만 공식문서에서는 런타임이라고 이야기 합니다. 런타임이란 특정 언어로 짜여진 프로그램들을 실행할 수 있는 환경을 의미합니다. 자바스크립트 런타임 이라는 것은 자바스크립트로 짜여진 프로그램을 실행할 수 있는 환경이라는 의미가 됩니다. 노드는 런타임이기때문에 자바스크립트 프로그램을 실행할 수도 있고, 단순히 서버를 실행시켜버릴 수도 있습니다. 또는 우리가 익히 알고있는 웹 프라임 워크도 노드를 기반으로 돌아가기도 합니다. 서버도 간단히 이야기 하고 넘어가자면 서버는 네트워크 통신으로 클라이언트에 서비스를 제공하는 것을 의미합니다. 서버는 컴퓨터.. 2021. 11. 28.
[Javascript] optional chainning ?. 1. optional channing 옵셔널 체이닝은 프로토타입 체인으로 묶인 객체들의 프로퍼티에 안전하게 접근할 수 있게 됩니다. 안전하게 접근한다는 말은 접근하려던 프로퍼티가 존재하지 않는다면 기존에는 그냥 오류를 뱉어버렸지만, 옵셔널 체이닝을 이용하면 존재하지 않아도 오류를 뱉지 않고 스크립트를 계속 실행하게 됩니다. 다음과 같은 코드에서는 당연하게도 결과로 TypeError를 뱉어냅니다. obj 객체 아래 name.address가 존재하지 않기 때문이죠. const obj = {}; console.log(obj.name.address); 이렇게 에러를 뱉는 순간 스크립트를 정지하게 됩니다. 하지만 실제 상황에서는 이런경우에도 에러는 따로 처리하고 스크립트 읽기를 계속해야합니다. 사용자가 사용하다 .. 2021. 11. 24.
[Javascript] shorthand property names 객체를 정의하다보면 꽤 자주 key와 value를 같은 이름으로 사용하게 되는 경우가 발생하는데, 같은 단어를 두 번 사용하는게 은근히 귀찮죠. 이런 문제를 해결하는 새로운 표기법이 shorthand property names입니다. 1. shorthand property names shorthand property names은 객체에서 key와 value명이 같은 경우 축약해서 사용할 수 있게 만들어주는 문법입니다. //기존 객체 코드 const obj = { name: name, color: color, x: x, y: , }; //shorthand property names를 이용한 코드 const obj = { name, color, x, y, }; 2. shorthand method names .. 2021. 11. 24.
[Javascript] default function parameter default functin parameter, 기본값 함수 매개변수입니다. 이름처럼 매개변수에 기본값을 주는 문법입니다. 1. default functin parameter default functin parameter는 함수의 매개변수에 기본값을 설정하는 문법입니다. 만약 파라미터를 요구하는 함수에 대해서 호출될때 전달된 파라미터가 없거나 undefined전달시 이 기본값을 파라미터로 사용하게 됩니다. 사용법은 파라미터에 기본값을 '='연산자로 지정해주면 됩니다. function(x = 기본값) {}; const add = (x = 1, y = 2) => { return x + y; }; console.log('#1: ' + add(2, 2)); console.log('#2: ' + add(3)); .. 2021. 11. 24.
[Javascript] protected와 private 멤버 예전에 클래스와 프로토타입을 설명할 때 간단하게 설명했었는데, 미흡한거같아서 추가적으로 포스팅하게 되었습니다. 1. protected와 private 멤버 다른 자바계열이나 C계열 언어(자바스크립트도 C계열이지만)의 멤버들에게는 '접근지정자'라고 하는 키워드가 있습니다. public, protected, private 세가지인데요. 이들은 객체 내부의 멤버에 대해서 외부에서 접근할 수 있는 권한을 부여하는 키워드입니다. 우리가 주목해야할 것은 ptrotected와 private인데요. private 멤버는 간단히 말해 클래스, 객체 내부에서만 접근할 수 있고 외부나 상속받은 객체에서는 접근을 불가능하게 만들어주는 요소입니다. 객체는 당연히 외부에서 쉽게 접근을 허용하면 안되기 때문에 일반적으로 대부분의 .. 2021. 11. 24.
300x250