12. 함수
2024. 11. 2. 14:48ㆍ자바스크립트(Javascript)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>함수</title>
</head>
<body>
<script>
func1() //함수 선언식으로 만든 함수는 생성전에 호출해도 호출이 가능함
function func1(){
console.log(`func1() 호출`) // func1() 호출
// func1() 호출
// func1() 호출
}
function func2(num1, num2){
console.log(`func2() 호출`) // func2() 호출
return num1 + num2
}
func1()
func1()
const result = func2(10, 3)
console.log(result) // 13
// 함수의 메모리 주소를 전달하는 방법
const sum = func2
console.log(sum(10, 3)) // 13
// 함수의 작성팁
// 조건식이 있을 때 조건을 만족하지 않은 경우를 함수 도입부분에서 모두 처리 후 미리 종료
function func3(num){
if(num < 0) return
return num
}
console.log(func3(10)) // 10
console.log(func3(0)) // 0
console.log(`-----------------`)
//매개변수의 기본값은 undefined
function func4(num1, num2){
console.log(num1) // undefined
console.log(num2) // undefined
console.log(arguments) // Arguments [callee: ƒ, Symbol(Symbol.iterator): ƒ]
console.log(arguments[0], arguments[1]) // 10 3
}
console.log(`-----------------`)
func4()
func4(10,3)
console.log(`-----------------`)
function func5(num1=0, num2=0){
console.log(`${num1} + ${num2} = ${num1 + num2}`) // 0 + 0 = 0
}
func5()
func5(10,3)
func5(10)
//원하는 매개변수를 넘길수 없다
func5(num2=10)
console.log(`-----------------`)
function func6(...nums) {
console.log(`nums의 값 : ${nums}`) // nums의 값 : 30,50,80,100,40
console.log(`nums의 타입 : ${typeof(nums)}`) // nums의 타입 : object
for(let i in nums){
console.log(`i:${i}, nums: ${nums[i]}`)
// i:0, nums: 30
// i:1, nums: 50
// i:2, nums: 80
// i:3, nums: 100
// i:4, nums: 40
}
}
func6(30, 50, 80, 100, 40)
console.log(`-----------------`);
//함수를 만들고 바로 실행하기
(function(){
console.log(`실행되고 사라짐`) // 실행되고 사라짐
})(); //앞뒤로 끝에 세미콜론을 꼭 붙여줘야함
//함수 표현식 : 함수를 실행보다 먼저 선언해야함
const func7 = function(){
console.log(`func7() 호출`) // func7() 호출
}
func7()
</script>
</body>
</html>
728x90
LIST
'자바스크립트(Javascript)' 카테고리의 다른 글
14. 객체 (0) | 2024.11.02 |
---|---|
13. 화살표 함수 (0) | 2024.11.02 |
11. 배열과 반복문 (2) | 2024.11.02 |
10. 배열 (2) | 2024.11.01 |
9. 반복문 - for 문 (0) | 2024.11.01 |