函数是可重复使用的代码块。
可以把它想象成一个小机器,输入一些东西(参数),然后输出一些东西(返回值)。
如何定义和调用函数?
定义一个函数很简单,你可以使用 function
关键字。下面是一个简单的例子:
// 定义一个函数 function sayHello() { console.log('Hello, world!'); } // 调用这个函数 sayHello();
在这个例子中,我们定义了一个名为 sayHello
的函数,它会在被调用时打印出 "Hello, world!"。
注意这里,使用大括号{}包裹了函数里的代码。
初学者要仔细前面提过的,JavaScript 区分大小写,所以这里是全小写的function
。
参数和返回值
函数可以接受参数,也可以返回值。
参数是你传递给函数的输入,而返回值是函数的输出。
来看一个例子:
// 定义一个带参数的函数 function add(a, b) { return a + b; } // 调用这个函数,并传递参数 let result = add(5, 3); console.log(result); // 输出 8
在这个例子中,add
函数接受两个参数 a
和 b
,并返回它们的和。
在使用 add
函数时,为这个函数传入参数值 5 和 3,并得到返回结果 8。
参数的类型
参数本质上按值传递给函数,因此,即使函数里面的代码给传递给函数的参数赋了新值,这个改变也不会反映到全局或调用该函数的代码中。
但是如果将对象作为参数传递,而函数改变了这个对象的属性,这样的改变对函数外部是可见的。
来看一个例子:
function myFunc(theObject) { theObject.name = "Apple"; } const fruit = { name: "Orange", location: "Jiangxi", star: 5, }; console.log(fruit.make); // "Orange" myFunc(fruit); console.log(fruit.make); // "Apple"
在这个例子中,myFunc
函数改变了对象的 name 值,这个改变反应到了变量 fruit
中。
如果将数组作为参数传递,而函数改变了这个数组的值,这样的改变对函数外部也同样可见。
来看一个例子:
function myFunc(theArr) { theArr[0] = 30; } const arr = [45]; console.log(arr[0]); // 45 myFunc(arr); console.log(arr[0]); // 30
在这个例子中,myFunc
函数改变了数组一个数的值,这个改变同样反应到了数组 arr
中。
一个例子
定义函数:使用 function
关键字,后面跟着函数名和小括号。小括号中包含参数,多个参数用逗号分隔。函数体用大括号 {}
包裹。
调用函数:直接使用函数名加上小括号。如果函数有参数,在小括号中传递相应的参数值。
参数:参数是函数的输入,可以在定义函数时指定。在调用函数时传递实际的值。
返回值:使用 return
关键字返回函数的输出。如果函数没有 return
语句,通常理解为这个是一个没有返回的函数,但实际上它会返回 undefined
。
再来看一个稍微复杂一点的例子:
// 定义一个函数,计算圆的面积 function calculateArea(radius) { if (radius <= 0) { return 'Radius must be greater than zero'; } return Math.PI * radius * radius; } // 调用这个函数 let area = calculateArea(5); console.log(area); // 输出 78.53981633974483
在这个例子中,calculateArea
函数接受一个参数 radius
,并返回圆的面积。
如果传递的半径小于等于 0,函数会返回一个错误消息。
总结
🍑 函数是可重复使用的代码块。
🍑 使用 function
关键字定义函数。
🍑 使用 return
关键字返回函数的输出。
该文章在 2024/10/19 12:22:25 编辑过