JavaScript

JavaScript

[JavaScript] ' == '와 ' === ' 의 차이점을 알아보자

이번 포스팅에서는 자바스크립트에서 ' == ' 연산자와 ' === ' 연산자의 차이점을 정리하려고 한다. 💡 == 연산자 == 는 Equal Operator이고, == 는 a == b의 값이 같은지를 비교해서, 같으면 true, 다르면 false라고 한다. == 연산자는 두 피연산자의 값의 타입이 다를 경우 자동으로 일부 피연산자의 타입을 변환후 값을 비교한다. 타입을 비교하지 않고 값만 비교하기 때문에 ' === ' 연산자에 비해 느슨하다고 할 수 있다. const a = 1; const b = "1"; console.log(a == b); // true 하나가 숫자형이고 다른 하나가 문자열이면, 문자열을 숫자로 변환 후 값을 비교하여 true를 반환한다. null == undefined // true..

JavaScript

[JavaScript] - 고차함수

고차 함수란? 1. 다른 함수를 인자로써 전달받는 함수를 의미한다. 이 때 전달이 되는 함수는 콜백함수이다. 2. 다른 함수를 결과로써 리턴하는 함수 이런 함수를 커링 함수라고 부른다. 🧐 왜 고차 함수가 중요할까? 시야가 트이고 생산성이 증가하기 때문이다. 추상화라는 것은 복잡한 자료, 모듈, 시스템으로 부터 핵심적인 개념 즉 에센셜을 추출해 내는 것으로 이해할 수 있다. 정확한 내부 동작을 몰라도 이해하고 사용할 수 있기 때문에, 문제를 더 쉽고 빠르게 해결할 수 있다는 장점이 있다. 추상화의 관점에서 바라보면, 함수도 사고 혹은 논리의 모음이다. 자주 사용하는 기능들을 모아서 함수를 하나의 모듈처럼 만들어서 계속 재사용한다. 복잡한 모든 로직을 일일이 짜지 않아도 미리 만들어두면 가져다 쓸 수 있기..

JavaScript

[Javascript]콜백함수와 비동기 처리 - Promise

✅ 비동기 제어하기 Promise "Promise는 프로미스가 생성될 때 꼭 알 수 있지는 않은 값을 위한 대리자로, 비동기 연산이 종료된 이후의 결과값이나 실패 이유를 처리하기 위한 처리기를 연결할 수 있도록 합니다. 프로미스를 사용하면 비동기 메서드에서 마치 동기 메서드처럼 값을 반환할 수 있습니다. 다만 최종 결과를 반환하지는 않고, 대신 프로미스를 반환해서 미래의 어떤 시점에 결과를 제공합니다. 간단히 말하면 비동기 처리에서 사용하는 객체다. Promise는 다음 중 하나의 상태를 가집니다. 대기(pending): 이행하지도, 거부하지도 않은 초기 상태. 이행(fulfilled): 연산이 성공적으로 완료됨. 거부(rejected): 연산이 실패함. 대기(pending) new Promise(exe..

JavaScript

[Javascript] 콜백함수와 비동기 처리 part1

비동기 정말 어렵다..... 수업을 들어도 정말 이해가 안가는 녀석.. 이번 정리를 통해 비동기 용어 개념은 확실히 알아놔야겠다. 🔥 사전에 알아야 될 용어 - 동기 동기란 요청이 들어온 순서에 맞게 하나 씩 처리하는 방식으로, 요청 들어온 작업이 끝날 때 까지 기다렸다가 응답을 즉시 처리하고 다음으로 넘어간다. ex) 카페 알바생이 주문을 하나씩 받고 하나 완료 하면 다음 손님으로 넘어간다. - 비동기 비동기란 하나의 요청에 따른 응답을 즉시 처리하지 않아도, 그 대기 시간동안 또 다른 요청에 대해 처리 가능한 방식이다. 요청 들어온 작업을 수행하는 대기시간 동안 다른 요청을 처리하다가 요청이 완료됬다는 이벤트 핸들러 (callback 함수)의 알림이 오면 처리한다. ex) 카페 알바생이 손님들 음료를..

JavaScript

[JavaScript] - 프로토타입과 클래스를 알아보자!

✅ 프로토타입이란? JavaScript는 프로토타입 기반 언어이다. 프로토타입(Prototype)은 원형 객체를 말한다. JavaScript의 모든 객체는 각자의 부모 객체와 연결되어 있으며 부모 객체의 프로퍼티나 메서드를 상속받아 사용할 수 있다. 이러한 부모 객체를 프로토타입이라고 한다. 위의 사진에서는 위에서부터 차례대로 클래스, 프로토타입, 인스턴스이다. 상속은 .protorype 프로퍼티를 통해서 가능하다면 인스턴스가 자신의 프로토타입은 .__proto__를 통해서 가능하다. 💡 .prototype : 내가 원형일 때 존재함. 함수 객체만 가지고 있다. 생성자를 가지는 원형으로 선언 가능 💡 __proto__ : 나의 원형을 가리킴 모든 객체가 가지고 있다. 하나의 Link 라고 할 수 있다.

JavaScript

[JavaScript] - 객체 지향 프로그래밍란?

✅ 객체지향프로그래밍 (object-oriented programming(OOP)) 프로그램 설계방법론이자 개념의 일종으로, 명령형 프로그래밍에 속한다. 프로그램을 단순히 데이터와 처리 방법으로 나누는 것이 아니라, 프로그램을 수많은 '객체(object)'라는 기본 단위로 나누고 이들의 상호작용으로 서술하는 방식이다. 객체란 하나의 역할을 수행하는 '메소드와 변수(데이터)'의 묶음으로 봐야 한다. object-oriented programming(OOP) OOP는 프로그램 설계 철학입니다. OOP의 모든 것은 "객체"로 그룹화됩니다. OOP의 4가지 주요 개념을 통해 재사용성을 얻을 수 있습니다. OOP는 객체로 그룹화된다. 이 객체는 한번 만들고 나면, 메모리상에서 반환되기 전까지 객체 내의 모든 것이..

JavaScript

[JavaScript] - JavaScript (타입)

✍️ Number 타입 JavaScript의 여러 데이터 타입 중 Number는 일상생활에서 흔히 접할 수 있는 숫자를 자바스크립트에서 표현하기 위한 데이터 타입입니다. 정수(integer)와 실수(float)을 모두 표현할 수 있습니다. 100; // 정수를 표현할 수 있습니다. -100; // 음수를 표현할 수 있습니다. 100.123; // 실수를 표현할 수 있습니다. ⭐️ typeof 연산자 typeof 연산자로 해당 값이 숫자 타입인지 확인할 수 있습니다. typeof 100; // 'number' typeof -100; // 'number' typeof 100.123; // 'number' ⭐️ Math 내장 객체 Math.floor(): 괄호 안의 숫자를 내림하여 반환합니다. Math.cei..

JavaScript

[JavaScript] - JavaScript 개념!

1주차에는 html과 css를 배웠고 이번주부터는 JavaScript를 본격적으로 배운다. ✍️ 코드 실행 console.log() 'hello world’라고 입력하고 엔터를 치는 순간 JavaScript 엔진은 이 코드를 읽고, 평가하고, 출력합니다. REPL아니고 코드를 직접 실행하는 경우에는 console.log() 메서드로 출력을 할 수 있습니다. 괄호 안에 'hello world'를 입력하고 엔터를 눌러 출력합니다. 1 console.log('hello world'); // hello world console.log(): 개발자 도구 콘솔이나 터미널에 원하는 값을 출력할 수 있게 돕는 메서드 ✍️ 주석 JavaScript에서 주석은 // 다음에 작성하거나, /*, */ 사이에 작성하면 됩니다...

형일
'JavaScript' 카테고리의 글 목록