Study
[JavaScript_study] 문자열 메소드(String methods)
* str.indexOf(text) (주의) 찾는 문자가 여러개여도 첫번째 문자만 반환한다. let desc = "Hi guys. Nice to meet you."; desc.indexOf('to'); // 14 desc.indexOf('man'); // -1 // 찾는 문자가 없으면 -1을 반환한다. // -1보다 크다는 조건을 넣지않으면 Hi의 index가 0이므로 if에서 0은 false이므로 // 아래의 console은 작동하지 않는다. if(desc.indexOf("Hi") > -1) { console.log("Hi가 포함된 문장입니다.") } * str.slice(n, m) // n : 시작점 // m : 1. 없으면 문자역 끝까지 2. 양수면 그 숫자까지(포함하지 않음) 3. 음수면 끝에서부..
[JavaScript_study] 숫자, 수학 method (Number, Math)
* toString() 10진수 -> 2진수 / 16진수 let num = 10; num.toString(); // "10" num.toString(2); // "1010" let num2 = 255; num2.toString(16); // "ff" console.log(Math.PI); // 3.141592653589793 * isNaN() // NaN인자 아닌지는 isNaN으로만 확인이 가능하다. let x = Number('x'); // NaN x == NaN // false x === NaN // false NaN == NaN // false // NaN은 자기자신과도 같지 않다고 한다. isNaN(x) // true isNaN(3) // false * parserInt() // parseInt는..
[JavaScript_study] Symbol
* Symbol은 유일한 식별자를 만들때 사용한다. (유일성보장) 특정객체에 원본데이터는 건들지않고 속성을 추가할 수 있다. const a = Symbol(); // new를 붙이지 않는다. const b = Symbol(); console.log(a) // Symbol() console.log(b) // Symbol() a === b; // false a == b; // false const id = Symbol('id'); const id = Symbol('id'); id // Symbol(id) id2 // Symbol(id) id === id2 // false id == id2 // false // 원본객체를 건들지 않고 객체를 추가가능하다. const user = { name : 'Mike', ..
[JavaScript_study] Object - methods / Computed property
* Computed property (계산된 프로퍼티) let a = 'age'; const user = { name : 'Mike', age : 30 } // 아래와 같이 사용 가능하다. let a = 'age'; const user = { name : 'Mike', [a]: 30 // age : 30 } const user = { [1 + 4] : 5, ["안녕" + "하세요"] : "Hello" } user // {5: 5, 안녕하세요: "Hello"} * Methods Object.assign() : 객체 복제 * 빈 객체에 Object.assign() const user = { name : "Mike", age : 30 } // 잘못된 복제 방법 // 객체가 복사되면서 들어가는게 아니라 그 참조..
[Node.js_study] 소스코드 수정시 자동으로 재시작 해주는 PM2, Nodemon
node.js 개발할 때 자바스크립트 소스코드를 수정할 때마다 어플리케이션을 재실행해야 하는 불편함이 있는데요. 이 불편함을 해결해주는 2가지 방법이 있다. 개발 및 테스트용으로 사용한다면 nodemon을 하는게 좋고 실제 서비스에 사용한다면 pm2가 좋은 것으로 생각됩니다. 서버에서 웹 어플리케이션을 운영할 때 코드 업데이트 및 충돌이 나면 재시작등을 해줘야한다. 그래서 서버의 영속성을 위해 여러가지 툴들이 등장했는데, 최근 PM2라는 도구가 사용하기 좋아 도입하게 되었다. * PM2 PM2는 앞서 이야기 한 것 처럼 백그라운드 잡으로 Node.js 프로세스를 관리해주는 역할을 한다. 서버다운없이 다시로드할 수 있도록 도와준다. 설치하기 npm을 이용하여 글로벌로 설치한다. npm install pm2..
[Node.js_study] npm 지역 설치와 전역 설치
npm install 명령어에는 지역(local) 설치와 전역(global) 설치 옵션이 있다. 옵션을 별도로 지정하지 않으면 지역으로 설치되며, 프로젝트 루트 디렉터리에 node_modules 디렉터리가 자동 생성되고 그 안에 패키지가 설치된다. 지역으로 설치된 패키지는 해당 프로젝트 내에서만 사용할 수 있다. # 지역 설치 $ npm install 전역에 패키지를 설치하려면 npm install 명령어에 -g 옵션을 지정한다. 전역으로 설치된 패키지는 전역에서 참조할 수 있다. 모든 프로젝트가 공통 사용하는 패키지는 지역으로 설치하지 않고 전역에 설치한다. # 전역 설치 $ npm install -g 전역에 설치된 패키지는 OS에 따라 설치 장소가 다르다. macOS의 경우/usr/local/lib/..