일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- 웹스크래핑
- 도트
- setItem
- PYTHON
- vsCode
- 도린이
- classList
- 회전
- click
- Unity
- getItem
- 독립변수
- 픽셀
- 연습
- 코딩
- 2D
- wsl
- 탑다운
- intervals
- Quaternion
- className
- Lerp
- topdown
- 종속변수
- euler
- jQuery
- 자주 사용하는 Quaternion 함수
- addEventListener
- javascript
- Event
- Today
- Total
쫑가 과정
볼 때마다 헷갈리는 return 본문
return은 하나씩 살펴보면 어렵지 않지만 이상하게 헷갈린다.
하나씩 봐보자.
const calculator = {
add : function (a,b) {
console.log(a+b)
},
minus : function (a,b) {
console.log(a-b)
},
divide : function (a,b) {
console.log(a / b)
},
multiplication : function (a,b) {
console.log(a * b)
}
};
calculator.add(2,3);
calculator.minus(2,3);
calculator.divide(2,3);
calculator.multiplication(2,3);
--------------------------------
5
-1
0.6666666666666666
6
지금까지 배웠던 variable, object, function을 이용해서 간단한 계산식을 만들었다.
console.log를 이용해 console에 결괏값이 나타나게 했다.
이렇게 되면 console에 결과가 나오고 끝난 거다.
그 결괏값을 가지고 더 이상 뭔가를 할 수가 없다.
결과를 console이 아닌 화면에 출력한다든지
무언가를 변경한다거나, data를 받아서 사용하거나 할 수 없다.
return
a+b를 console.log 하지 않고 기억해두었다가 사용하고 싶다.
const calculator = {
add : function (a,b) {
a+b
}
};
console.log(calculator.add(2,3));
---------------------------------
undefined
console.log만 쏙 빼면 a+b가 제대로 저장됐는지 확인해보니
값이 없다고 나온다.
값이 제대로 돌지 않았다.
const calculator = {
add : function (a,b) {
return a+b
}
};
console.log(calculator.add(2,3));
-----------------------------------
5
a+b 앞에 return을 추가해서 보면 결괏값이 잘 나왔다.
calculator.add(2,3)이 5가 되었다는 건데
a =2, b=3 이 되고 2+3이 되어서
해당 function을 불러낸 자리로 return 된다.
calculator.add(2,3)이 5로 return 된 것.
calculator.add(2,3) 값이 코드상에 저장되었기에 다른 뭔가에 사용할 수 있다.
다른 예제
function에 string을 console에 나오게 추가했다.
const age=96;
function calculateKrAge(ageOfForeigner) {
console.log("Hello");
ageOfForeigner + 2;
console.log("good");
};
const KrAge = calculateKrAge(age);
console.log(KrAge);
---------------------
Hello
good
undefined
return 되지 않은 ageOfForeginer은 결괏값이 없다고 나오고
나머지 string들은 잘 나왔다.
const age=96;
function calculateKrAge(ageOfForeigner) {
console.log("Hello");
return ageOfForeigner + 2;
console.log("good");
};
const KrAge = calculateKrAge(age);
console.log(KrAge);
--------------------
Hello
98
return ageOfForeigner +2를 하고 나니
return 된 98과 Hello는 나왔는데 good은 나오지 않았다.
이유는
return은 해당 function을 종료시키는 역할도 하기 때문.
return 아래에 적힌 good은 실행하지 않아 나오지 않았다.
'JavaScript > 공부' 카테고리의 다른 글
input 입력값 받기.(input.value) (0) | 2021.07.24 |
---|---|
className, DOMTokenList(classList) (0) | 2021.07.21 |
Event(.addEventListener(), event Handler property) (0) | 2021.07.17 |
html과 JavaScript 연결하기, 선택자 (0) | 2021.07.16 |
conditional(if,elseif,else)/ 연산자(논리,비교) (0) | 2021.07.14 |
데이터 정리(array, object, function) (0) | 2021.07.09 |
Variable (0) | 2021.07.03 |
JavaScript? (0) | 2021.07.03 |