본문 바로가기

IT321

객체지향적 프로그래밍 함수를 생성자로 사용하여 프로그래밍하는 것은 생성된 함수는 new로 호출되며 직접호출도 가능하게 되는데 new와 직접호출시에 this에 바인딩되는 객체가 달라지기에 생성자로 사용되는 함수는 대문자로 표기하며 사용을 추천하지 않는다. Function.prototpe.method = function(name, func) { if (!this.prototype[name]) { this.prototype[name] = func; } } 위의 함수를 이용하면 다음과 같이 사용할 수 있다. Person() 안에 setter나 getter를 사용하게 되면 new Person(); 사용시 여러개의 함수를 가지게 된다. prototype 사용시 함수객체를 여러개 생성할 필요 없이 프로토 타입 체인으로 접근한다. Func.. 2020. 7. 2.
클로저 이미 생명 주기가 끝난 외부 함수의 변수를 참조하는 함수를 의미한다. function outerFunc() { let x = 1; return function() { x++; console.log(x); } }; const newFunc = outerFunc(); newFunc(); 여기서 outerFunc() 에 있는 x와 같은 변수를 자유 변수라고 한다. 클로저를 사용하는 코드는 그렇지 않은 코드보다 메모리 부담이 크다. 2020. 6. 30.
with 스코프 체인을 사용자가 임의로 수정하기 위해 사용하나 with는 성능을 위해서는 사용하지 않는 것이 좋다. 2020. 6. 30.
import / export 순수 js 만들어서 분리하는 경우 router, store 사용하는 경우 import router from "@/router"; import store from "@/store/index"; 아래와 같이 받아 온다 export의 경우 여러가지 방법이 있지만 아래와 같이 사용했다. export default { setCheckBox() {}; logout() { store._actions.signOut[0](); router.push('/signIn'); localStorage.removeItem('notice'); } }; import 의 경우 import common from "@/js/common"; common.logout(); 위의 방법으로 사용한다 export default는 내보낸 값만 가져올.. 2020. 6. 30.