반응형
function(함수)
function hello(){//hello함수 정의
alert("hello!")
}
hello()//hello함수 호출
//---------------------------------------------------
function hello(n){//매개변수,파라미터
alert("hello:"+n);//hello:3
}
hello(3)//함수 호출(function call)
//hello함수를 호출하면서 입력으로 3전달
//매개변수=매개체변수
//매개체=둘사이를 연결하는 ~어떤것
//---------------------------------------------------
function add(n1,n2){//매개변수 2개 설정
return n1+n2;//더한값 반환
//함수가 종료되면서 남기는 값
//함수 호출된 자리에 남는 값
}
var result=add(3,4)
//add함수를 호출하면서 입력으로 3과4 전달
//var result=7
document.write("덧셈결과:"+result,"<br>")
recursive(재귀함수)
function recursive(){//정의
console.log("recursive call!")
recursive()//호출
}
recursive()
//---------------------------------------------------
//종료조건이 있는 재귀함수
function recursive(n){//정의
if(n==0){
return;//return만하면 함수종료
}
console.log("recursive call!:"+n)
recursive(n-1)//호출
}
recursive(3)
//---------------------------------------------------
//3! = 3*2*1
function factorial(n){
if(n==1){
return 1
}else{
return n*factorial(n-1)
}
}
var result=factorial(3)
//var result=3*factorial(2)
//var result=3*2*factorial(1)
//var result=3*2*1
//var result=6
document.write(result,"<br>")
call back(콜백함수)
function myFunc(){
alert('호출!')
}
setTimeout(myFunc,3000)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
#display-area{
width:100px;
height:100px;
background-color: aqua;
font-size:30px;
font-weight: bold;
}
</style>
<script>
var time=1
var result=null
//137 / 60 -> 2.45656 (Python,JavaScript)
//137 / 60 -> 2 (C,Java)
function myFunc(){
//console.log(time)
document.getElementById("display-area").innerText=time
time++
}
function start(){
if(result != null){
alert("이미 실행중!")
return//함수종료!
}
result=setInterval(myFunc,1000)
}
function stop(){
clearInterval(result)//1,2,3...
result=null//꺼진상태로 표시
}
</script>
</head>
<body>
<div id="display-area">
</div>
<button onClick="start()">시작</button>
<button onClick="stop()">중지</button>
</body>
</html>
반응형
'JavaScript' 카테고리의 다른 글
[JavaScript] 객체생성 (0) | 2023.07.20 |
---|---|
[JavaScript] Array (0) | 2023.07.19 |
[JavaScript] Math.~(함수) (0) | 2023.07.19 |
[JavaScript] 반복문 (0) | 2023.07.19 |
[JavaScript] 입력창 (0) | 2023.07.19 |