데이터를 전달받아 정해진 작업을 수행하고, 결과값을 반환하는 것을 함수라고 한다.
자바스크립트에서 함수를 선언할때는 function을 쓴다.
function adder(a,b){
sum=a+b;
return sum;
여기서 adder은 함수의 이름, a,b는 주어진 값의 실행을 위해 필요한 변수(매개변수), return은 결과값을 반환하기 위한 키워드, sum은 결과를 수행한 값을 의미한다.
이 함수는 다음과 같이 호출한다.
var n=adder(12345,67890);
document.writeln(n);
혹은
adder(12345,67890);
함수에 변수를 지정해줘서 출력코드를 이용해 불러내는 방식이 있고, 이름과 필요한 매개변수를 지정해서 불러내는 방법이 있다.
-함수의 응용
function adder1(){
f=document.frm;
s=parseInt(f.n1.value)+parseInt(f.n2.value);
f.sum.value=s;
return;
}
<body>
<form name="frm">
숫자1:<input name="n1">+숫자2<input name="n2"><br>
<input name="sum">
<input type="button" value="더하기" onclick="adder1()">
</form>
</body>
다음과 같이 form을 함수에 선언할수도 있다.
form값에 입력된 값1과 값2를 가져와서 더해서 결과를 내놓는 함수이다.
-전역함수
자바스크립트는 몇몇개의 전역 함수를 제공한다.
- eval() : 수식을 문자열 형태로 전달받아 실행한다
- parseInt(str,radix) : 문자열을 숫자로 반환하여 리턴한다. radix를 입력할경우, 8진수나 16진수를 반환한다.
- parseFloat(str) : 문자열을 실수로 반환하여 리턴한다.
- isFinite() : 숫자를 나타내는 상수 키워드
- isNaN() : 숫자가 아님을 나타내는 상수 키워드
function calc(){
res=eval("2*3+4*6");
document.writeln(res+"<br>");
res2=parseInt("0x32");
document.writeln(res2+"<br>");
res3=parseInt("aaa");
if(isNaN(res3))
document.writeln("res3은 숫자가 아닙니다");
}
첫번째 줄 : " "를 이용해 문자열로 지정되었음에도, 2x3+4*6=30이 도출되었다
두번째 줄 : 문자열로 16진수를 지정했음에도, 이것을 정수형으로 바꾸고, 10진수로 변환해 도출했다.
세번째 줄 : "aaa"는 정수로 변환될 수 없는 값이므로 NaN가 true로 도출되었다.
반응형
'HTML+CSS+Javascript > Javascript' 카테고리의 다른 글
8. 배열 (0) | 2020.03.11 |
---|---|
7. 객체 (0) | 2020.03.11 |
5. 반복문 (0) | 2020.03.11 |
4. 조건문 (0) | 2020.03.11 |
3. 연산 (0) | 2020.03.10 |