반응형
특징 : non-block , 비동기 (asynchronous) 방식이다.
-> 어떤 일을 다른 객체에게 시키고 그 일이 끝나기를 기다리지 않고 그 객체가 다시 나를 부를 때까지 내 할일을 하고 있을 수 있음.
<!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>
</head>
<body>
<script type="text/javascript">
plus = function (a,b, callback){
let result = a+b;
callback(result);
}
plus(1,2,function(res){console.log(res)});
</script>
</body>
</html>
콜백 함수를 써야하는 경우에 콜백함수를 쓰지 않는다면 콜백함수 과정이 끝나기 전에 다른 프로세스를 진행하게 되는 경우가 있다. 값을 읽기 전에 출력을 해버려서 undefined가 뜬다.
내용이 복잡할 수록 callback이 많아지므로 구조를 잘 짜서 함수를 쓰는게 좋다.
참고사이트
반응형