티스토리 뷰
값으로서의 함수
함수도 객체이다. 거의 모든 언어가 함수를 가지고 있다.
<script>
function a(){}
</script>
아래처럼도 나타낼 수 있다.
<script>
var a = function a(){}
</script>
<script>
a = {
b: function () {}
};
</script>
a 이란 변수엔 b라는 속성(함수)이 담겨있다.
<script>
function cal(func, num) {
return func(num)
}
function increase(num) {
return num + 1
}
function decrease(num) {
return num - 1
}
alert(cal(increase, 1));
alert(cal(decrease, 1));
</script>
함수가 변수에도 저장될수있고 그래서 자연스럽게 객체에도 저장될 수 있는데 그래서 메소드라고 불리운다.
반환값으로도 함수를 사용할 수 있는 예제
<!DOCTYPE html>
<html lang="ko">
<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>생활코딩</title>
</head>
<body>
<script>
function cal(mode) {
var funcs = {
'plus': function (left, right) {
return left + right
},
'minus': function (left, right) {
return left - right
}
}
return funcs[mode];
}
alert(cal('plus')(2, 1));
alert(cal('minus')(2, 1));
</script>
</body>
</html>
<script>
var process = [
function (input) {
return input + 10;
},
function (input) {
return input * input;
},
function (input) {
return input / 2;
}
];
var input = 1;
for (var i = 0; i < process.length; i++) {
input = process[i](input);
}
alert(input);
</script>
60.5 3번 11, 121, 60.5 왕복한 값
변수, 매개변수, 리턴값
처리의 위임
<script>
function sortNumber(a, b) {
// 위의 예제와 비교해서 a와 b의 순서를 바꾸면 정렬순서가 반대가 된다.
return b - a;
}
var numbers = [20, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1];
alert(numbers.sort(sortNumber)); // array, [20,10,9,8,7,6,5,4,3,2,1]
</script>
정렬에서 기본적으로 사용할 수 있는 방법은 배열.sort(); 라는 명령어를 쓸 수 있다.
기본 - 내장 객체 내장 메소드 빌트인 객체 빌트인 메소드
numbers (객체, 배열) . sort () (메소드);
넘버스에게 소트가 정렬을해라 라고 명령을 함 그럼 넘버안에 [] 대괄호 값을 출력
[20,10,9,8,7,6,5,4,3,2,1] 라고 출력이된다.
비동기 처리
글작성 - 이메일 발송 예약 3시간 - 작성 완료
'코딩 공부 > 생활 코딩' 카테고리의 다른 글
생활 코딩 - arguments (0) | 2021.08.18 |
---|---|
생활 코딩 - 클로저 (0) | 2021.08.18 |
생활 코딩 - 유효범위 (0) | 2021.08.18 |
생활 코딩 - 객체 (4) | 2021.08.17 |
생활 코딩 - 배열 (1) | 2021.08.17 |
댓글
© 2022 chanchaning