전체 글
-
함수의 범위 (scope)카테고리 없음 2020. 4. 30. 17:55
scope 스코프는 범위입니다. 어떤 범위일까요? 선언된 변수의 범위라고 할 수 있습니다. let x = 'Hello'; function says() { let x = 'bye'; } says(); // says함수를 실행하여 새로운 변수 x를 선언 console.log(x); // 그러나 변수 x는 'Hello' 위의 코드에서 두 개의 변수 x 는 다릅니다. 처음 선언된 x 는 전역 변수이고, says 함수에서 선언된 x 는 지역변수입니다. 전역 변수는 window 객체의 속성이 되는 변수이고, 전역 변수는 함수 안에 있는 변수를 의미합니다. 전역 변수는 함수 안에 들어있기 때문에 전역 변수에 영향을 끼칠 수 없습니다. 함수의 scope 때문입니다. 그렇다면 함수 안에서 전역변수를 바꾸고 싶다면 어떻게..
-
ES6문법카테고리 없음 2020. 4. 28. 14:59
currying function sum(x) { return function (y) { return function (z) { return x + y + z; }; }; }; console.log(sum(1)(2)(3)) //6 arrow function 화살표 함수표현은 function표현에 비해 구문이 짧고 자신의 this, arguments, super 또는 new.target을 바인딩 하지 않습니다. 화살표 함수는 항상 익명입니다. 에소드 함수가 아닌 곳에 가장 적합합니다. 생성자로서 사용할 수 없습니다. function sum(x) { return y => { return z => { return x + y + z; } } } console.log(sum(1)(2)(3)) //6 var sum ..
-
(loading)Git Workflow for Pair ProgrammingUnclassified 2020. 4. 27. 23:28
Git 페어 프로그래밍 설정 Git을 활용한 페어 프로그래밍을 위해서 서로의 레파지토리를 연결하는 순서입니다. 원본 레파지토리를 각자 포크합니다. 서로 자신의 local에 클론합니다. $ git clone 페어의 로컬과 연결합니다. $ git remote add pair $ git remote -v 코드를 작성한 사람이 커밋을 합니다. $ git push origin msater(or other branch name) 페어가 변경된 코드를 가져옵니다. $ git pull pair master(or other branch name) 코드를 작성한 사람이 커밋을 합니다. $ git push origin msater(or other branch name) 페어가 변경된 코드를 가져옵니다. $ git pull ..
-
package.jsonJavascript 2020. 4. 27. 15:37
하나의 프로그램은 다양한 모듈이 합쳐져서 만들어집니다. 우리보다 잘하는 사람들이 만들어 놓은 검증된 모듈을 사용하여 시간을 단축시킴과 동시에 안정성을 확보합니다. NPM(Node Package Manager) npm은 필요한 모듈을 다운로드할 수 있는, 모듈들이 모여있는 모듈 스토어입니다. 필요한 대부분의 모듈들을 NPM에서 다운로드하면 됩니다. npm이라는 키워드를 하나의 명령어처럼 사용하기도 합니다. 만약에 모르는 사람이 만든 프로젝트를 실행시켜야 한다면 어떤 모듈이 있는지 알아야 합니다. 이때 package.json이 프로그램을 실행시키기 위해 필요한 모듈이 무엇인지, 프로그램을 실행시키는 방법, 테스트방법 등을 알려줍니다. 다만 필요한 모듈의 목록만 있을 뿐입니다. 실제 모듈들은 node_modu..
-
Runtime & Node.jsJavascript 2020. 4. 27. 15:12
Runtime 런타임이란 어떤 프로그래밍 언어가 동작할 수 있는 프로그램이라고 할 수 있습니다. 자바스크립트를 이용해서 코드를 만들고 실행되는 곳이 바로 런타임이고, 자바 스크립트 런타임은 웹 브라우저입니다. 이전에는 자바스크립트 런타임이 브라우저 밖에 없었지만 이제 Node.js라는 새로운 자바스크립트 런타임이 나왔습니다. 이로인해 자바스크립트를 이용해서 웹페이지 뿐만 아니라 서버와 같은 다른 프로그램도 만들 수 있습니다. 자바스크립트 코드를 브라우저에서 실행시킬 수도 있고, Node.js에서 실행시킬 수도 있습니다. 자바스크립트 코드를 HTML script 태그 안에 작성한다면 브라우저에서 동작하고, 터미널에서 node 명령어를 입력하면 Node.js 환경에서 실행됩니다. //node $ node r..
-
백슬래시 - escaping sequenceproblems 2020. 4. 24. 01:22
백슬래시는 escape 기능을 가지고 있습니다. escaping sequence는 기존 의미를 탈출한 특수한 기능을 위해 사용됩니다. 코드를 작성해가며 기존에 정해진 약속에 의해 표현이 곤란한 문자들을 표현한다던지, 특정 기능을 제공할 수 있습니다. 만약에 I'll be a "Rockstar" 이 문자열을 출력하려 한다면 console.log("I'll be a "Rockstar"") //Uncaught SyntaxError console.log('I'll be a "Rockstar"') '//Uncaught SyntaxError 컴퓨터는 문자열을 묶은 따옴표와 같은 따옴표가 문자열 안에 있다면 문자열이 끝났다고 여깁니다. 이런 표현적 한계에서 벗어나기 위해서 백슬래시(\)의 escape기능을 사용합니다..