반응형 programming language33 prototype 프로토타입은 자바스크립트의 핵심이다. 프로토타입 기반의 언어가 자바스크립트라는 개념을 인식해야한다. 클래스를 사용할 때도 프로토타입과 연관되어 있다. const user = { name: 'cap', age: 100 } const admin = user = { name: 'cap', age: 100, role: 'admin' } user과 admin 객체를 만들었다. 코드에서 보면 중복되는 name, age 속성들이 있다. 중복되는 코드를 줄일 수 있는 방법이 javascript에서 지향하는 prototype상속의 개념이다. user의 정보를 admin도 사용할 수 있도록 __proto__를 사용해서 prototype을 상속시켜줬다. admin을 조회해보니 [[prototype]] 안에는 age와 nam.. 2022. 12. 8. enum 살펴보기 enum이란? 특정 값들의 집합을 의미하는 자료형으로 어떠한 집합의 데이터 타입이다. enum Shoes{ Nike, Adidas, puma } const myShoes = Shoes.Nike console.log(myShoes) Shoes라는 집단을 만들었다. 해당 데이터를 가지고 변수를 만들었는데 콘솔로 찍으면 0 이 나오게 된다. 이넘을 썼을 때 별도의 값을 지정해주지 않으면 숫자형 enum으로 취급을 하게 된다. 그래서 Shoes.Nike는 첫번 째 값이 0으로 시작된다. // 초기화를 할당하지 않으면 기본값은 0부터 증가 enum Shoes{ Nike = 10, Adidas, puma } const myShoes = Shoes.Adidas console.log(myShoes) //11 Nike .. 2022. 12. 7. 연산자를 이용한 타입 정의_유니온, 인터섹션 union type function logMessage( value:any) { console.log(value) } logMessage('hello') logMessage(100) logMessage(false) any를 사용하면 어떤 타입이건 넣을 수 있다. 하지만 이렇게 사용하면 타입을 사용하는 의미를 잃게 된다. function logMessage( value:string | number) { console.log(value) } logMessage('hello') logMessage(100) || or연산자를 썼을 때의 파이프를 하나 추가해준다. 문자열과 숫자 모두 동일하게 받아서 사용할 수 있게 된다. 장점 타입 가드: 특정 타입으로 타입의 범위를 좁혀나가는 과정(필터링시켜줌) 타입 구분 후 .. 2022. 12. 6. call, apply, bind call, apply, bind 함수 호출 방식과 상관없이 this를 지정할 수 있다. call `func.call(thisArg[, arg1[, arg2[, ...]]])` 모든 함수에서 사용할 수 있고 this를 특정값으로 지정할 수 있다. - thisArg: 함수를 호출할 때 사용되어지는 this - arg1, arg2... : 함수가 호출되어야 하는 인수를 말한다. 쉽게 얘기하자면 this는 첫 번째 , 나머지 두 번째 부터는 해당 함수의 매개변수로서의 사용 [call을 사용해서 this 지정하기] //함수에서 this는 window를 가리킨다. const mike = { name: 'mike' } const Tom = { name: 'Tom' } function showTishName() { c.. 2022. 12. 6. 이전 1 2 3 4 5 6 7 ··· 9 다음 728x90 반응형