JavaScript 16

[17장] 생성자 함수에 의한 객체 생성 - 2

- 목표생성자 함수의 인스턴스 생성과정을 알아보자.내부 메서드 [[Call]] 과 [[Construct]]를 알아보고 비교해보자.constructor와 non-constructor를 구분해보자.- 생성자 함수의 인스턴스 생성과정생성자 함수의 역할은 프로퍼티 구조가 동일한 인스턴스를 생성하기 위한 템플릿(클래스)으로서 동작하여 인스턴스를 생성하는 것과 생성된 인스턴스를 초기화(인스턴스 프로퍼티 추가 및 초기값 할당)하는 것이다. 인스턴스 생성 과정인스턴스 생성과 this 바인딩인스턴스 초기화인스턴스 반환1. 인스턴스 생성과 this 바인딩암묵적으로 빈 객체가 생성된다. 이 객체는 완성된 객체는 아니나 생성자 함수가 생성한 인스턴스로 분류된다.그리고 이 객체는 this에 바인딩 된다.바인딩은 식별자와 값을 ..

[17장] 생성자 함수에 의한 객체 생성 - 1

- 목표생성자 함수를 이용하여 객체를 생성하는 방식을 알아보자. 객체 리터럴을 사용하여 객체를 새엇앟는 방식과 생성자 함수를 사용하여 객체를 생성하는 방식과의 장단점을 살펴보자.- Object 생성자 함수생성자 함수란 new 연산자와 함께 호출하여 객체를 생성하는 함수를 말한다.new 연산자는 사용자 정의 객체 타입 또는 내장 객체 타입의 인스턴스를 생성한다. - MDN 생성자 함수에 의해 생성된 객체를 인스턴스 라고 한다. 자바스크립트에서는 Object 생성자 이외에도 String, Number, Boolean, Function, Array, Date, RegExp, Promise 등의 빌트인 생성자 함수를 제공한다.- 생성자 함수1. 객체 리터럴로 객체를 생성하는 방식의 장점과 문제점객체 리터럴은 아..

console.log("Object.is 와 일치 === 연산");

일치(===) 연산자 는 비교(==) 연산자 와 같이 좌항과 우항의 값을 비교하는 비교연산자 다.그렇다면 왜 하나는 '='이 3개이고 나머지 하나는 2개일까?왜 그런지 알아보고 둘중 어느게 더 좋고, 혹시 문제는 없는지 알아보자. 동등(==) 연산자동등 (==) 연산자는 좌항과 우항이 동일한지 참 거짓 여부를 판정해주는 연산자다.일반적으로 아래와 같이 값의 비교를 필요로 하는 경우에 사용되는데 그렇다면 == 연산자만 있어도 충분한거 아닐까 싶지 않을까?let num1 = 1;let num2 = 1;let num3 = 2;let result1 = num1 == num2 ? true : false;let result2 = num1 == num3 ? true : false;console.log(result1..

frontEnd/javaScript 2024.07.29

[코린이의 공부] flatMap vs filter,map (지적 환영)

들어가기 앞서. front end 개발자의 꿈을 꾸고 있는 코린이로 공부를 하는 과정을 기록하기 위한 블로그 입니다.그렇기에 코딩을 배우는 상황인 분이 보기에는 적합하지 않을 수 있기 때문에 주의가 필요합니다.최대한 틀리지 않은 내용을 적으려 노력 중이지만, 많은 부분에서 틀릴 예정입니다...틀린 부분에 대한 지적, 교정은 항상 감사드립니다. 그렇다면, 코린이의 기록 시작하겠습니다. flatMap 과 filter, map우선 두 함수의 실행 결과는 조건이 같다는 가정으로 동일한 결과를 보인다. 우선 filter와 map 을 사용한 코드를 보자. // using filterAndMapconsole.time("filterAndMap")const numbers = [1, 2, 3, 4, 5, 6, 7, 8, ..

frontEnd/javaScript 2023.11.30

Javascript_Question(1) : 함수의 출력

function one() {return function two() { console.log("one function return two function"); }}const test = one(); one() 함수는 two를 return 하는 함수이다.그런데, one() 이라는 함수를 바로 사용하면  다음과 같이 two 를 실행하여  console.log("one function return two function"); 이 동작이 리턴되어 실행되는 것이 아닌 two() 함수 자체를 리턴하여 출력되는 모습을 볼 수 있다. 그런데, one() 함수를 그냥 사용하지 않고 const test = one();으로 저장하여 test(); 를 입력하면 two의 함수가 아닌 two 함수가 실행된 결과 값이..

why? 2023.06.22