목록JavaScript (14)
kohigowild
🧐 프로토타입이란? 일반적으로 프로토타입(prototype)이란 원형이라는 뜻을 가진다. 자바스크립트는 프로토타입 기반 언어이다. 모든 객체들이 메서드와 속성들을 상속 받기 위한 템플릿으로써 프로토타입 객체를 가진다는 의미다. 우리가 함수라는 객체를 생성했을 때 그 객체에는 prototype이라는 object가 자동으로 생성된다. prototype에는 다시 constructor라는 객체가 자동으로 생성되어 서로를 참조할 수 있게 된다. Person.prototype.sum = function(){} 위의 코드를 통해서 prototype에 함수를 추가함으로써 여러 객체를 생성하였을 때 해당 함수를 사용할 수 있다. 예를 들어 Person이라는 object 안에 mitt, kim이 있는 경우, mitt.su..
✨ 자료구조 여러 데이터의 묶음을 저장하고 효율적으로 사용하는 방법을 정의한 것 특정한 상황에 놓인 문제를 해결하는 데 특화 ✨ 스택(Stack)과 큐(Queue) 스택과 큐 모두 Linear한(선형) 자료 구조이다. 이 둘은 아주 유사한 구조이나, element가 제거되는 방식에 차이가 있다. 스택은 마지막으로 삽입된 element가 가장 먼저 제거되는 방식인 LIFO(Last In First Out, 후입선출) 자료구조이다. 스택의 예시로는 브라우저 히스토리(이전 페이지, 다음 페이지) 또는 ctrl + z로 이전 작업을 취소하는 동작 등을 들 수 있다. 큐는 FIFO(First In First Out, 선입선출) 자료구조이다. 줄 서기를 생각하면 된다. 큐의 예시로는 예매 앱, 레스토랑 예약 등을 ..
🔍 정규 표현식(Regular Expression) 정규식은 문자열에서 특정 내용을 찾거나 대체, 또는 발췌하는 데 사용된다. 예를 들어 회원가입 화면에서 사용자로부터 입력 받는 전화번호가 유효한지 체크할 필요가 있다. 이때 정규 표현식을 사용하면 간단히 처리할 수 있다. 반복문과 조건문을 사용한 복잡한 코드도 정규 표현식을 이용하면 매우 간단하게 표현할 수 있다. 그러나 정규 표현식은 주석이나 공백을 허용하지 않고, 여러가지 기호를 혼합하여 사용하기 때문에 가독성이 좋지 않다는 문제가 있다. 정규 표현식은 리터럴 표기법으로 생성할 수 있다. 정규 표현식 리터럴은 아래와 같이 표현한다. 🔍 정규 표현식 활용 예시 💡 오늘만 특가, 오징어 땅콩 180g * 16개 32,600원. 오직 mittmall에서만..
🔍 고차 함수의 기본 정의 고차 함수란 함수를 파라미터로 전달 받거나 연산의 결과로 반환해 주는 메서드를 말한다. 자바스크립트를 함수형 프로그래밍에 알맞은 언어로 만들어 주는 특성이다. 고차 함수의 개념을 완전히 이해하기 위해서는 함수형 프로그래밍과 퍼스트 클래스 함수의 개념을 이해하는 것이 선행되어야 한다. 함수형 프로그래밍 함수형 프로그래밍은 함수를 다른 함수의 파라미터로 넘길 수도 있고 리턴 값으로 함수를 받을 수도 있는 프로그래밍 형태이다. 순수 함수 + 보조 함수의 조합으로 로직 내에 존재하는 조건문, 반복문을 제거하여 복잡성을 해결하고, 변수의 사용을 억제하여 상태 변경을 피하려는 프로그래밍 패러다임을 말한다. 즉, 순수 함수를 통해 부수 효과를 최대한 억제하여 오류를 피하고 프로그래밍의 안정..
🔍 객체(Object)의 기본 정의 자바스크립트는 객체 기반의 스크립트 언어이고, 자바스크립트를 이루고 있는 대부분의 것들이 객체로 존재한다. 따라서 자바스크립트의 기초를 다지기 위해서 객체에 대한 이해는 필수적이다. 자바스크립트에는 총 8가지의 자료형이 있다. 문자(String) 숫자(Number) Bigint: 길이 제약 없이 정수를 나타낼 수 있다. 불리언(Boolean) 심볼(Symbol): 객체의 고유한 식별자를 만들 때 사용한다. Null: 미지의 값을 뜻하며, 타입은 존재하지만 값은 없다. Undefined: 값도 없고, 타입도 지정되지 않은 상태 Object 이들 중 Object를 제외한 나머지는 오직 하나의 데이터만 담을 수 있어 원시형(Primitive type)이라 부른다. Objec..
🔍 Map 정의 Map() 메서드는 배열 내 모든 요소에 대하여 callbackFunction을 실행한 결과를 모아 새로운 배열을 반환할 때 사용한다. Map() 메서드는 새로운 자료구조 혹은 객체를 정의할 때 사용한다. 그 중에서도 새로운 자료구조를 필요로 하는 경우에 많이 사용한다. 예를 들어, 어떤 서비스에 가입한 회원들의 이름, 나이, 연락처로 나누어진 각각의 데이터가 주어졌을 때 모든 데이터를 합친 회원 정보를 사용해야 하는 상황에 map() 메서드를 활용할 수 있다. callbackFunction, thisArg 두 개의 인자를 갖고, callbackfunction은 currentValue, index, array 세 개의 인자를 갖는다. arr.map(callback(currentValue[..