[JavaScript] Functions 1

Enini·2022년 5월 11일
0

JavaScript

목록 보기
7/30

1. Function이 필요한 이유

계속 반복해서 사용할 수 있는 코드 조각

내가 다니는 학교 전교생의 이름이 적힌 코드를 구현하고 싶다.
이 때 Function이 없다면?

console.log("Hello my name is nini")
console.log("Hello my name is Dal")
console.log("Hello my name is Flynn")
console.log("Hello my name is jihyun")
console.log("Hello my name is sohi")
console.log("Hello my name is youngsu")
.
.
.
console.log("Hello my name is mimi")

전교생이 1억 명이라면 1억 명의 이름을 노가다로 바꿔야 한다.
각 이름만 바꾸고 싶을 때 어떻게 해야 할까?

2. Function

코드의 반복을 최소한으로 줄여야 한다.

코드의 반복을 최소한으로 줄일 수 있는 것은 바로 Function

Function은 어떤 코드를 캡슐화해서 실행을 여러 번 할 수 있게 해준다.

function sayHello(){
	aaaaaaaaaaa
}

위 코드처럼 function을 작성한 후 임의로 이름을 만들고(sayHello), sayHello를 실행할 때마다 실행되는 것을(aaaaaaaaaaa) 작성해준다.

function sayHello(){
	console.log("Hello!");
}

위 코드는 sayHello의 실행을 누를 때마다 "Hello!"가 실행되는 것이다.
그럼 어떻게 실행하는 것일까?

sayHello();

바로 이거!

3. 응용하기

(1) 이름과 나이

너무 쉬웠으니까 응용해보자~

argument(인수)가 필요하다.
function을 실행하는 동안 어떤 정보를 function에게 보낼 수 있는 방법.

function sayHello(nameOfPerson) {
	console.log(nameOfPerson);
}

sayHello("nini");
sayHello("Dal");
sayHello("Flynn");

나이도 넣을 수 있다.

function sayHello(nameOfPerson, age) {
	console.log("Hello my name is " + nameOfPerson + " and I'm " + age);
}

sayHello("nini", 27);
sayHello("Dal", 18);
sayHello("Flynn", 30);
Hello my name is nini and I'm 27
Hello my name is Dal and I'm 18
Hello my name is Flynn and I'm 30

(2) 계산기

같은 방식으로 계산기도 만들어 볼 수 있다.

1) 더하기

function plus(a, b) {
	console.log(a + b);
}

plus(60, 5);

2) 나누기

function divide(a, b) {
	console.log(a / b);
}

divide(60, 5);

여기서 순서에 맞춰 a=60, b=5 라고 할 수 있다.

function 뒤에 오는 것들을 임의로 만들 수 있다.
예를 들어, a, b, age, nameOfPerson 등

(3) player object

const player = {
	name: "nini",
    sayHello: funciton (otherPersonName){
    	console.log("hello " + otherPersonName + " nice to meet you!");
    },
};

console.log(player.name);
player.sayHello("jihyun");
nini
hello jihyun nice to meet you!
profile
안녕하세요! 만나서 반갑습니다!

0개의 댓글