profile
잘 할 수 있는 개발자가 되기 위하여

Study JavaScript 0629 - call/apply와 데코레이터, 포워딩

javascript에서 함수는 이곳저곳 전달될 수 있고, 객체로도 사용될 수 있다. 이번 시간에는 함수 간에 호출을 어떻게 포워딩(forwarding) 하는지, 함수를 어떻게 데코레이팅(decorating) 하는지에 대해 알아보자!CPU를 많이 잡아먹지만 결과는 안정적

2일 전
·
0개의 댓글

Study JavaScript 0629 - 내장 객체의 프로토타입

prototype 프로퍼티는 javascript 내부에서도 광범위하게 사용된다. 모든 내장 생성자 함수에서 prototype 프로퍼티를 사용한다.빈 객체가 있다고 가정해보자"\[object Object]" 문자열을 생성하는 코드는 어디에 있을까? toString 메소드

4일 전
·
0개의 댓글

Study JavaScript 0628 - 프로토타입 메소드와 __proto__가 없는 객체, 함수의 prototype 프로퍼티

어제 공부했던 proto는 브라우저를 대상으로 개발하고 있다면 다소 구식이기 때문에 더는 사용하지 않는 것이 좋다고 한다. 표준에도 관련 내용이 명시되어있다. 대신 아래와 같은 최신 메소드들을 사용하는 것이 더 좋다. Object.create(proto, [desc

5일 전
·
0개의 댓글

Study JavaScript 0627 - 프로토타입 상속

개발을 하다 보면 기존에 있는 기능을 가져와 확장해야 하는 경우가 생긴다.사람에 관한 프로퍼티와 메소드를 가진 user라는 객체가 있는데, user와 상당히 유사하지만 약간의 차이가 있는 admin과 guest 객체를 만들어야 한다고 가정해 보자. 이때 user의 메소

6일 전
·
0개의 댓글

Study JavaScript 0624 - 객체 프로퍼티 설정

객체에는 프로퍼티가 저장되고, 이는 key-value쌍으로 이루어진 것으로 우리는 알고 있었다.오늘은 객체 프로퍼티의 추가적인 부분들인 추가 구성 옵션 몇 가지와 getter, setter함수를 만드는 법을 알아보자!객체 프로퍼티는 value와 함께 플래그(flag)라

2022년 6월 24일
·
0개의 댓글

Study JavaScript 0621 - 화살표 함수

화살표 함수 화살표 함수는 단순히 함수를 짧게 쓰는 용도로 사용되지 않는다. javascript에서는 함수를 생성하고 그 함수를 어딘가에 전달한다. ex) arr.forEach(func), setTimeout(func) 등... 어딘가에 함수를 전달하게 되면 함수의

2022년 6월 22일
·
0개의 댓글

Study JavaScript 0620 - 함수 바인딩

setTimeout에 메소드를 전달할 때처럼, 객체 메소드를 콜백으로 전달할 때 ’this 정보가 사라지는’ 문제가 생긴다.이 문제를 어떻게 해결할까?객체 메소드가 객체 내부가 아닌 다른 곳에 전달되어 호출되면 this가 사라진다.setTimeout을 사용한 아래 예시

2022년 6월 20일
·
0개의 댓글

Study JavaScript 0617 - new Function 문법, 호출 스케줄링(setTimeout, setInterval)

함수 표현식과 함수 선언문 이외에 함수를 만들 수도 있는 방법이 하나 더 있다. 잘 사용하는 방법은 아니지만, 이 방법 외에는 대안이 없을 때 사용한다.new Function 문법을 사용하면 함수를 만들 수 있다.새로 만들어지는 함수는 인수 arg1...argN과 함수

2022년 6월 17일
·
0개의 댓글

Study JavaScript 0616 - 객체로서의 함수와 기명 함수 표현식

함수는 호출이 가능한 "행동 객체"이다. 함수를 호출 및 객체처럼 함수에 프로퍼티를 추가·제거하거나 참조를 통해 전달할 수 있다.함수 객체엔 몇 가지 쓸만한 프로퍼티가 있다."name"프로퍼티를 사용하면 함수 이름을 가져올 수 있다.함수 객체에 이름을 할당해주는 로직에

2022년 6월 16일
·
0개의 댓글

Vue Vite, Vuex, Pinia

vite는 현재 사용하는 프론트엔드 개발에서 웹팩을 중심으로 개발 환경과 배포 시스템이 구축되어 있는데, 이 웹팩을 사용할 때 보다 훨씬 더 빠르게 개발하고 배포할 수 있기 때문에 등장한 javascript 네이티브 모듈을 기반으로 한 dev server이다. 웹팩은

2022년 6월 15일
·
0개의 댓글

Study JavaScript 0614 - 변수 var, 전역 객체

변수 var는 let과 유사하다. 둘이 바꿔써도 큰 문제 없이 동작한다.하지만 var는 초기 javscript 구현 방식 때문에 let과 const로 선언한 변수와는 다른 방식으로 동작한다.오래된 스크립트에서 var를 만난다면 let으로 바꿔줘야 할 테고, 바꿔줄 경우

2022년 6월 14일
·
0개의 댓글

Study JavaScript 0608~0610 - 변수의 유효 범위와 클로저

변수의 유효범위와 클로저 변수 var: var로 선언한 변수의 스코프는 함수 스코프이거나 전역 스코프다. var의 선언은 함수가 시작되는 시점에서 처리가 된다. 예전에 자주 쓰이지만 현재는 let과 const를 사용한다. let: let으로 선언한 변수는 const:

2022년 6월 10일
·
0개의 댓글

Study JavaScript 0607 - 나머지 매개변수와 스프레드 문법

함수 정의 방법과 상관 없이 함수에 넘겨주는 인수의 개수엔 제약이 없다.아래의 예시를 보면함수를 정의할 때는 인수를 2개만 받도록 하고, 실제 함수 호출 시 이보다 더 많은 '여분의' 인수를 전달했지만 에러는 발생하지 않았다. 단, 반환 값은 처음 2개의 인수만을 사용

2022년 6월 7일
·
0개의 댓글

Study JavaScript 0603 - 재귀와 스택

문제 해결을 하다 보면 함수에서 다른 함수를 호출해야 할 때가 있다. 이때 함수가 자기 자신을 호출할 수도 있는데 이를 재귀라고 부른다.간단한 예시로 부터 재귀에 대해 알아보자. x를 n제곱해주는 함수 pow(x, n)을 만들어 보자.이를 구현하는 방법은 두 가지가 있

2022년 6월 3일
·
0개의 댓글

Study JavaScript 0531 - JSON과 메소드

객체를 문자열로 전환을 할 때 toString메소드를 사용한다. 그런데 개발 과정에서 해당 객체에서 프로퍼티가 추가되거나 삭제, 수정이 될 수 있다.이렇게 되면 매번 수정을 해야하기 때문에 번거로울 것이다.javascript에서는 이런 문제를 해결해주는 방법이 있는데

2022년 5월 31일
·
0개의 댓글

Study JavaScript 0530 - 1hr Date 객체와 날짜

날짜를 저장할 수 있고, 날짜와 관련된 메소드도 제공해주는 내장 객체 Date에 대해 알아보자.Date 객체를 활용하면 생성 및 수정 시간을 저장하거나 시간을 측정할 수 있고, 현재 날짜를 출력하는 용도 등으로 활용할 수 있다.new Date()를 호출하면 새로운 Da

2022년 5월 30일
·
0개의 댓글

Study JavaScript 0527 - 1hr 구조 분해 할당

객체와 배열은 javascript에서 가장 많이 쓰이는 자료구조이다.개발을 할 때 함수에 객체나 배열을 전달해야 하는 경우가 생기는데 가끔 이 객체나 배열의 전체 데이터가 아니라 일부 데이터만 필요한 경우가 생긴다.이럴 때 객체나 배열을 변수로 "분해"할 수 있게 해주

2022년 5월 27일
·
0개의 댓글

Study JavaScript 0526 - 1hr Object.keys, values, entries

keys(), values(), entries()를 사용할 수 있는 자료구조는 다음과 같다.MapSetArray일반 객체에도 순회 관련 메소드가 있긴 한데, keys(), values(), entries()와는 문법에 차이가 있다.일반 객체엔 다음과 같은 메서드를 사용

2022년 5월 26일
·
0개의 댓글

5월 4주차 Vue - Vuex, Vue Router, SPA, 단위 테스트

※그림 출처: Fast campus - 한 번에 끝내는 프론트엔드 개발 초격차 패키지 Online. / 박영웅 강사님 강의App.vue를 기준으로 여러 컴포넌트를 활용하는데 부모 형제가 아닌 특정한 관계가 여러가지 컴포넌트에서 같은 데이터를 활용할 때 Store라는 개

2022년 5월 25일
·
0개의 댓글

Study JavaScript 0525 - 1hr WeakMap & WeakSet

"가비지 컬렉션"에서 배웠듯이 javascript엔진은 도달 가능한 값(추후 사용될 가능서잉 있는)을 메모리에 유지한다.자료구조를 구성하는 요소도 자신이 속한 자료구조가 메모리에 남아있는 동안 대개 도달 가능한 값으로 취급되어 메모리에서 삭제되지 않는다.객체의 프로퍼티

2022년 5월 25일
·
0개의 댓글