-
1.一个函数可以有形参也可以没有形参(零个或多个)
-
什么是形参? 定义函数时 () 中的变量我们就称之为形参
// 没有形参的函数 function say() { console.log("hello world"); } say(); // hello world // 有形参的函数 function say(name) { console.log("hello " + name); } say("lnj"); // hello lnj
-
-
2. 一个函数可以有返回值也可以没有返回值
// 没有返回值的函数 function say() { console.log("hello world"); } say(); // hello world // 有返回值的函数 function getSum(a, b) { return a + b; } let res = getSum(10, 20); console.log(res); // 30
-
3. 函数没有通过return明确返回值, 默认返回undefined
function say() { console.log("hello world"); return; // undefined } let res = say(); console.log(res);
-
4. return的作用和break相似, 所以return后面不能编写任何语句(永远执行不到)
break的作用是立即结束switch语句或者循环语句
-
return的作用是立即结束当前所在的函数
function say() { console.log("hello world"); return; console.log("return后面的代码"); } say(); // hello world
-
5. 定义函数时实参的个数可以和形参个数可以不相同
-
什么是实参? 调用函数时传入的数据我们就称之为实参, 实参可以是常量也可以是变量
function getSum(a, b) { return a + b; } let res = getSum(10, 20); // 这里的10和20就是实参 let num1 = 10; let num2 = 20; let res = getSum(num1, num2); // 这里的num1和num2也是实参 console.log(res);
function getSum(a, b) { console.log(a, b); } // 当实参个数小于形参个数时,剩下的形参中存储的是undefined let res = getSum(10); console.log(res); //10 undefined // 当实参个数大于形参个数时, 剩下的实参就不能存储到原先定义的变量中 let res = getSum(10, 20, 30); console.log(res); // 30
-
-
6. JavaScript中函数和数组一样, 都是引用数据类型(对象类型)
-
既然是一种数据类型, 所以也可以保存到一个变量中
// 将一个函数保存到一个变量中 // 将来可以通过变量名称找到函数并执行函数 let say = function () { console.log("hello world"); } say();
-