携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第12天,点击查看活动详情
函数使用分为 声明函数和调用函数
声明函数
function 函数名(){
// 函数体
}
例如下面
function fn(){
console.log("hello,world")
}
1.function声明函数关键字全部是小写
2.函数是做某件事情,函数名一般为动词
3.函数不调用的时候自己是不会执行的
调用函数
函数名()
函数封装
就是把一个或者多个功能通过函数的方式封装起来,对外只提供一个简单的函数接口
小案例
用函数计算1-50的和
function fn(){
var sum=0;
for(var i=1;i<=50;i++){
sum +=i;
}
console.log(sum);
}
fn();
函数参数
1.函数是可以重复相同的代码的,可以重复调用多次
形参
我们可以用函数的参数实现函数重复不同的代码
function 函数名(形参1,形参2...){
// 在声明函数的小括号里是 形参(形式上的函数)
}
实参
函数名(实参1,实参2...) // 在函数调用的小括号里的是实参(实际的参数)
形参是实参的执行过程
function book(hello){
console.log(hello); // hello = "three body"
}
book("three body");
先执行函数调用,之后再反过去找函数的调用
之后会把three body传到hello这个形参里
那么形参就是接受实参的,类似于一个变量,当前并不知道是什么
函数的参数可以有,也可以没有,个数不限
利用函数求任意两个数之和
function fn(num1,num2){
console.log(num1+num2)
}
fn(5,6);
fn(5,8)
利用函数求任意两个数之间的数的和
function fn(num1,num2){
var sum = 0;
for(var i =num1;i<=num2;i++){
sum += i;
}
console.log(sum)
}
fn(5,20);
函数形参和实参的匹配问题
function fn(num1,num2){
console.log(num1+num2);
}
fn(2,5);
1.如果实参的个数和形参的个数一致,那么正常输出结果
如果实参个数多于形参
function fn(num1,num2){
console.log(num1+num2);
}
fn(2,5,7);
结果和上面情况一样,都是7 实参的个数多于形参的个数,会取到形参的个数
如果实参个数小于形参
function fn(num1,num2){
console.log(num1+num2);
}
fn(2);
因为形参可以看成是不用声明的变量
num2就是一个变量但是没有接受值,那么最终结果就是undefined
那么最终打印结果都是NaN