Method

배병일 ㅣ 2023. 6. 13. 22:01

알게 된 내용 :

 

메소드(Method)

코딩을 공부하면서 메소드란 단어를 많이 들었다.

 

강의를 통해 메소드가 무엇인지 배웠고 알게 된 내용을 기록해보자.

 

우선 메소드에 대한 설명을 듣기 전에 객체가 무엇인지 객체 리터럴이라는 말은 무엇인지 적어보자.

 

객체

객체 또한 메소드 만큼 자주 듣는 단어이다.

 

JS에서 객체란

 

데이터 타입은 크게 원시 타입과 객체 타입으로 분류 되고,

 

Object 라고 하는데  구글링을 해보니 Object는 프로퍼티(property) 의 모음이라고 나와있다.

 

프로퍼티가 무엇인가 ?

 

예시를 통해 알아보자.

 

ex ) 

 const human = {

	name : "배병일",
	// 프로퍼티 Key : name , 프로퍼티 Value : 배병일
	age : 24
	// 프로퍼티 Key : age , 프로퍼티 Value : 24
}

코드 블럭을 보면 알 수 있다.

 

human 이라는 Object 를 선언했고

 

name : "배병일: 이라는 property / age : 24 라는 property 로 이루어져있다.

 

여기서 name 과 age 는 property key,  배병일과 24 는 property Value 인 것이다.

 

그럼 메소드(Method)는 무엇인가?

 

강의에서 설명하는 property 는

 

프로퍼티를 참조하고 조작할 수 있는 동작(Behavior)을 나타낸다.
객체의 프로퍼티 값이 함수로 구성되어 있을 경우 메서드(Method) 라고 부른다. 라고 한다.

 

쉽게 예시를 통해 알아보자.

 

let objectLiteral = {
	key : "Value", // 프로퍼티
	helloWorld : function () {  
    // 메서드  ( helloWorld 라는 프로퍼티 key, function () 라는 프로퍼티 value 로 이루어진 메서드)
		return "Hello world"
	}
}

쉽게 말해 프로퍼티가 있는데 helloWorld 라는 property Key 와 function () 이라는 property Value 가 있고

 

이때 Value 가 함수로 구성 되어 있을때 메소드라고 부른다 설명한다.

 

 

궁금한 것 :

 

코딩을 하다보면 post , get , delete, put 이런 것들을 메소드라고 말하던데 이건 어떤 의미인가 궁금하다..

 

위에 설명대로라면 결국 메소드라는 것은 하나의 프로퍼티라는 의미인거 같은데 단순히 post , get , delete, put 이런 것들을 살펴보면 property의 형태가 아니지 않은가 ?..

 

그래서 찾아보고 난 내 생각을 정리 해보자.

 

post , get , delete, put 이런 것들을 먼저 살펴보자면

 

HTTP 요청 메소드라고 정의 한다 나와 있다.

 

psot : 특정 리소스에 엔티티를 제출한다.

 

get : 특정 리소스의 표시를 요청한다. ( 데이터를 받기만 한다. )

 

delete : 특정 리소스를 삭제한다.

 

put : 목적 리소스 모든 현재 표시를 요청 paylod로 바꾼다.

 

이외에 몇가지의 HTTP 메소드가 있지만 생략하겠다.

 

내용을 이해해보자면 흔히 말하는 post 메소드 get 메소드 등

 

해당 post 메소드를 사용했을때, get 메소드를 사용했을때 어떠한 작동이 이루어진다.

 

이 말은 강의에서 설명했듯 poperty Key 와 property Value가 있는데 Value가 함수로 구성 되어 있을 경우 메소드라 했고,

 

key를 실행 할 경우 함수가 작동된다는 뜻이다.

 

그럼 post, get 등 이 property Key가 되는 것이고 해당 메소드를 실행했을때

 

작동하는 것이 Value 부분인 함수가 실행되는 거처럼 같은 원리이지 않을까 추측해본다..!

'Javascript > Node.js' 카테고리의 다른 글

Node.js  (0) 2024.02.16
Node.js 동작원리  (0) 2024.01.15
Node 에서 import export 사용하기 위한 babel 과 type: module 의 차이  (0) 2023.09.23
node-cache  (0) 2023.07.30