先补充一点小知识:
术语foobar, foo, bar, baz 和qux经常在计算机编程或计算机相关的文档中被用作占位符的名字。当变量,函数,或命令本身不太重要的时候,foobar, foo, bar, baz 和qux就被用来充当这些实体的名字,这样做的目的仅仅是阐述一个概念,说明一个想法。这些术语本身相对于使用的场景来说没有任何意义。
1 函数的使用步骤:
- 函数的使用包含两个步骤:
- 声明函数 —— 封装 独立的功能
- 调用函数 —— 享受 封装 的成果
- 声明函数,在JavaScript中也可以称为定义函数:
- 声明函数的过程是对某些功能的封装过程;
- 调用函数,也可以称为函数调用:
- 调用函数是让已存在的函数为我们所用;
- 这些函数可以是刚刚自己封装好的某个功能函数;
- 也可以去使用默认提供的或者其他三方库定义好的函数;
- 函数的作用:
- 在开发程序时,使用函数可以提高编写的效率以及代码的重用;
- 声明函数使用function关键字:这种写法称之为函数的定义
function 函数名(形参 parameter) { 封装的代码 }
- 注意:
- 函数名的命名规则和前面变量名的命名规则是相同的;
- 函数要尽量做到见名知意(并且函数通常是一些行为(action),所以使用动词会更多一些);
- 函数定义完后里面的代码是不会执行的,函数必须调用才会执行;
- 调用函数通过 函数名(实参 argument) 即可
- 形参和实参
- 形参(参数 parameter):定义 函数时,小括号中的参数,是用来接收参数用的,在函数内部 作为变量使用
- 实参(参数 argument):调用 函数时,小括号中的参数,是用来把数据传递到函数内部用的
- 练习: sayHello,求和
function sayHello(name) { console.log(`Hello, ${name}`) } sayHello('八戒') function sum(a, b) { console.log(`${a + b}`) } sum(6, 6)
- 函数返回值:
- 回想我们之前使用的prompt函数,函数需要接受参数,并且会返回用户的输入
- 所以说, 函数不仅仅可以有参数, 也可以有返回值:
- 使用return关键字来返回结果;
- 一旦在函数中执行return操作,那么当前函数会终止;
- 如果函数中没有使用 return语句 ,那么函数有默认的返回值:undefined;
- 如果函数使用 return 语句,但是return后面没有任何值,那么函数的返回值也是:undefined;
2 arguments 参数
直接看代码:
// 1.arguments的认识 function foo(name, age) { console.log("传入的参数", name, age) // 在函数中都存在一个变量, 叫arguments console.log(arguments) // arguments是一个对象 console.log(typeof arguments) // object // 对象内部包含了所有传入的参数 // console.log(arguments[0]) // console.log(arguments[1]) // console.log(arguments[2]) // console.log(arguments[3]) // 对arguments来进行遍历 for (var i = 0; i < arguments.length; i++) { console.log(arguments[i]) } } foo("bajie", 28, 1.6, "高老庄") // 2.arguments的案例 function sum() { var total = 0 for (var i = 0; i < arguments.length; i++) { var num = arguments[i] total += num } return total } console.log(sum(10, 20)) console.log(sum(10, 20, 30)) console.log(sum(10, 20, 30, 40))