함수안 일정규칙이 들어가 있는내용
function 함수이름(매개변수1,매개변수2,...) {
함수가 호출되었을때 실행하고자 하는 실행문장;
return돌려줄 값;
}
자주 사용한것을 블록으로{} 묶음
매개변수 : 함수 안에서 사용할 변수값을 가져와서 사용하기 위해 담는 변수
함수안에서는 함수가 호출되었을때 실행하고자 하는 실행문장 코드는 여러줄도 가능
리턴 : 계산끝났거나 전달하고 싶은 결과값 전달 함수실행된수 돌려줄값사용
만약 리턴값이 없다면 콘솔창에 출력하고 싶어도 undefined가 뜬다
인수: 함수를 호출할때 넣어주는 값
선언한후 호출해서사용한다!!
리턴값 저장하거나 출력가능
Number라는 형 변환함수 사용해줄때 리턴되어 출력되어 반드시 number= Number()로
저장가능과 출력가능 값만 있어서 함수만 사용하고 이값넣어주지 않는다면 변환된값
typeof로 확인가능 객체(object)임
//매개변수와 리턴값이 있는 함수의 형태
//선언적 명시적 함수
function name1(name) {//매개변수 name, 값을 받아올수있다
document.write(name);//html에 출력하는 코드
return name+"입니다";//name입니다 를 반환,
// 모든함수는 리턴값을 갖는다 할당되지 않은경우 undefined
}//함수 선언 끝
//함수 호출하기
name1("김나라"); //리턴값안나온다 리턴값은 값생성되고 넣어주거나 따로 출력해야볼수있다
//콘솔창에 name1("김나라"); 를 입력해야 "입니다" 라는 리턴값이 붙는다
리턴값이 없다면 콘솔에 name1("김나라"); 입력해도undefined가 뜬다
김나라
사용자 정의 함수
사용자가 직접만들어 사용하는 함수이다
명시적(선언적)함수
함수표현식(무명함수/익명함수)
화살표함수
명시적 선언적함수
스크립트안 함수처럼 선언시는 미리적어두고 나중에 바디에적용 함수부분만 빼서 head부분에 적어준다
head 안에 미리정의 body에 호출한다
function hi() { //hi이름으로 함수만들어준다
document.write("안녕하세요"); //출력할값넣어준다
}//선언끝
hi(); //호출
//가져오기 위해 실행해야한다 hi이름통해 함수호출 콘솔에도 hi();라고 하면 나온다
안녕하세요
function color(name) {
document.write(`<p>이 색은 ${name}입니다.</p>`);//실행내용
} //선언
color("빨간색");//호출
이색은 빨간색입니다
function job(name) {
return `<p>직업은 ${name}입니다</p>`;//리턴으로 문자내보내줌
}
document.write(job("의사"));//명시적 실습2 도큐먼트사용해서인트로 리턴을사용
직업은 의사입니다
arguments객체
기본값 매개변수와 나머지 매개변수를 사용하지 않을때 사용할수있다
함수내에서 모든임수 참조 :arguments
배열과 비슷하게 인덱스로 값을 찾을 수있다 : arguments[0] 특정자릿수값을 알아낼수있다
length를 이용하여 길이 값을 확인하여 사용 -for문
.lenght를 통해 arguments객체 포함 함수가 몇개의 인자를 가지는지알수있다
numArgu(2);
undefined
로 나온다 들어온인수값만 나옴
나머지연산자(b=1) 기본값연산자사용못함
기본값매개변수 매개
참조 : 인수를 가졍ㄹ수있다
뱅려과비슷하게 인덱스로값찾을수있음 ㄱ
length로 길이값확인
function addAll() {
let sum=0;//가져온모든수더함
for(num of arguments) {//for of로 값들고옴
sum += num;
}
return sum;
}
//arguments실습7
document.write(addAll(5));//인수
5
addAll에서 매개변수를 하나도 받지 않는데 몇개의 인자를 예측못해서 매개변수를 정하지 않고 함수안에서
arguments라고 하는 객체를 sum에다가 꺼내 리턴해주면 인자들의 값을 더해서 그값을 알아낼수가 있다
'JavaScript' 카테고리의 다른 글
.getElementById .querySelector (0) | 2022.02.25 |
---|---|
함수표현식 함수선언문 화살표함수 (0) | 2022.02.22 |
for문 i<10 i<=10 (0) | 2022.02.21 |
while do...while break continue (0) | 2022.02.18 |
중첩 for문 (0) | 2022.02.17 |