函数
1、为什么需要函数?可以实现代码复用,提高开发效率。
函数的定义 :函数function,是被设计为执行特定任务的代码块。
函数可以把具有相同或相似逻辑的代码‘包裹’起来,通过函数调用执行这些被“包裹”的代码逻辑,这样做有利于精简代码方便复用。
2.函数的使用
①声明函数: function 函数名(){ };
②函数的命名要求:
①和变量名基本一致②尽量使用驼峰命名法(类似于userName)③前缀应该为动词④命名建议常用动词约定。常见的动词及含义如下;
动词 | 含义 |
---|---|
can | 判断是否可执行某个动作 |
has | 判断是否含有某个值 |
is | 判断是否为某个值 |
get | 获取某个值 |
set | 设置某个值 |
load | 加载某些数据 |
③函数的调用方法
函数名(),调用了函数,函数体写的逻辑代码都会被执行,值得被注意的是函数必须先声明在调用才能被正常执行,一次声明可以多次调用。
3.函数传参
函数不传参使用,局限性大,如果函数完成功能需要调用者传入数据,南无就需要带有参数的函数。这样也极大的提高了函数的灵活性。
传参函数,声明 function 函数名(参数1,参数2,....)
调用方法:
4.函数返回值
当调用某个函数后,该函数返回的结果就是返回值。当函数需要返回数据出去时。使用return关键字。
函数细节:
5.作用域
通常来说,一段程序代码中所用到的名字并不总是有效的可用的,而限定这个名字的可用性的代码范围就是这个名字的作用域。
作用域的使用提高了程序逻辑的局部性,新增了程序的可靠性,减少了名字冲突。全局作用域:全局有效;局部作用域:局部有效;、
变量有特殊情况:如果函数内部,变量没有声明,直接赋值,也当全局变量看,但是强烈不推荐,但是有一种情况,函数内部的形参可以看做是局部变量。(不提倡)
变量访问原则:采用就近原则的方式来查找变量最终的值
①只要是代码,就至少有一个作用域
② 写在函数内部的局部作用域
③如果函数中还有函数,那么在这个作用域中就又可以诞生一个作用域
④访问原则:在能够访问到的情况下先布局,布局没有在找全局。
6.匿名函数
没有名字的函数,无法直接使用。
使用方式:函数表达式,立即执行函数
①函数表达式
将匿名函数赋值给一个变量,并且通过变量名称进行调用,这个就是函数表达式
let fn = function () {
//函数体
}
fn()//函数名()
②立即执行函数
避免全局变量之间的污染
注意:多个立即执行函数要用;隔开,要不然会报错。
立即执行函数的作用:防止变量污染