디지털 컨버전스/Java Script
[Javascript] function
gimyeondong
2020. 4. 13. 12:05
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<script>
function plus(num1, num2){
var result = num1, num2;
return result;
}
var result = plus(10,20);
console.log(result);
</script>
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<script>
function sayHello(){
console.log("Hello");
}
function plus(num1, num2){
var result = num1, num2;
return result;
}
var result = plus(10,20);
console.log(result);
sayHello();
</script>
</body>
</html>
자바스크립는 C언어의 포인터 개념을 끌고 왔기 때문에
Stack : 지역변수 , 매개변수 선언
Data : static
Heap : new 동적할당
Text : 코드영역 (자바에서는 숨기려고 한다)
주소값을 이용해서 변수를 저장
코드의 주소값 -> 함수의 이름
주소값() : 주소값으로 찾아가서 실행해라.
주소값 : 주소값 자체
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<script>
function plus(num1, num2){
var result = num1, num2;
return result;
}
// var result = plus(10,20);
// console.log(result);
var result = plus;
console.log(result(50,30));
// result와 plus는 같은 함수
</script>
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<script>
function plus(num1,num2){
return num1+num2;
}
function minus(num1,num2){
return num1-num2;
}
function calc(act, num1, num2){
return act(num1,num2);
}
console.log(calc(minus,10,20));
</script>
</body>
</html>
익명함수
함수를 주소화 시킨다.
함수를 선언하되 이름없는 함수로 만들어 리턴된 주소값을 다른 변수에 담아줄수 있다.
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<script>
function plus(num1,num2){
return num1+num2;
}
function minus(num1,num2){
return num1-num2;
}
var mply = function(num1,num2){
return num1*num2
}
function calc(act, num1, num2){
return act(num1,num2);
}
console.log(calc(minus,10,20));
</script>
</body>
</html>