본문 바로가기

_Programming/JavaScript

Basic.Function

Function

기능적으로 무언가를 만들어 내는것이다.

'A piece of code' : 많이 가져다 쓸 수 있는 한 조각의 코드 라고 표현한 것을 들었는데 이 말이 딱 와닿는듯 하다.

 

console.log()를 예로 들면,

console은 Object이고  . 찍고 불러오는 것들이 console Object에 내장되어 있는 각각의 함수가 되는것이다.

console.log(console);     //console {debug: ƒ, error: ƒ, info: ƒ, log: ƒ, warn: ƒ, …}

Function 생성

- sayHalo가 함수 이름이 되고 {}안에 내용이 실행문이고 함수이름을 부르면 응답한다.(실행이된다.)

function sayHalo(){                  
	console.log("halo!");
}

//함수 실행

sayHalo();                     //halo!

 

만약 이 함수에 변하는 값을 넣어주고 싶으면 함수의 ()자리에 매개변수(변하는 값을 받는 변수)를 넣어주고 

함수를 호출시 ()값에 argument라는 전달인자(매개변수에 실제로 들어가는 놈)을 넣어주면 내가 전달인자에 무엇을

넣어주냐에 따라 실행된 결과물이 달라지게 된다.

 

function sayHalo(name){                         // name : parameter(매개변수)
	console.log("halo!",name);
}

sayHalo("go");           //halo! go             // "go" : argument(전달인자)

 

           

sayHalo("go",30);    //halo! go  //내 함수에서 30을 받을 준비가 되어있지 않기때문에 30은 오지 않는다.


function sayHalo(name, food){
	console.log("halo!" + name + " you deserve to eat " +food);
}

sayHalo("GO", "Kimchi");     //halo!GO you deserve to eat Kimchi


//백틱(``)    '',""이거 말고
function sayHalo(name, food){
	console.log(`halo ${name} you deserve to eat ${food}`);
}

sayHalo("GO", "Kimchi");          //halo GO  you deserve to eat Kimchi


//return (주는게 있음 받는게 있어야지)

//return을 해주지 않았을때는 undefined가 뜬다
function sayHalo(name, food){
	console.log(`halo ${name} you deserve to eat ${food}`);
}

//haloGo는 sayHalo함수의 리턴값이랑 같은 것이다.
//haloGo는 sayHalo함수의 실행된 결과 값이다.

const haloGo = sayHalo("GO", "Kimchi");     //halo GO you deserve to eat Kimchi

console.log(haloGo);               //undefined

//return을 해줬을때
function sayHalo(name, food){
	return `halo ${name} you deserve to eat ${food}`;
}

//const haloGo = sayHalo("GO", "Kimchi");     

console.log(haloGo);             //halo GO you deserve to eat Kimchi


const calculator = {
	plus: function(a,b){
		return a + b;
		//a**b,a/b(제곱근)
	}	
}

console.log(haloGo);
const plus = calculator.plus(5,5); 
console.log(plus);      //10

 

함수 호출방식 차이

함수이름 : 내가 필요한 시점에 함수를 쓸때 사용된다.

함수이름() : 호출 안해도 자동적으로 바로 실행된다.

 

'_Programming > JavaScript' 카테고리의 다른 글

Basic.Ajax  (0) 2020.11.17
Basic.DOM(Document Object Model)  (0) 2020.11.17
Basic.Array & Object  (0) 2020.11.17
Basic.연산자(Operator)  (0) 2020.11.17
Basic.변수(Variable)  (0) 2020.11.17