函数:函数可以理解为一个 特定的代码块 容器 ,它可以完成特定的需求, 并且可以 重复 使用
函数声明和函数调用:使用function 声明函数
function 函数名(){
//函数体
document.write('syaHellow')
}
函数名()
函数默认不会主动执行,必须通过函数名() 调用才会执行.
函数一次声明可以多次调用,每一次函数调用函数体里面的代码会重新执行一次.
函数名命名规范
1.和变量命名基本一致
2.尽量小驼峰式命名法
3.前缀应该为动词(get,set ,add.......)
4.命名建议:常用动词约定
函数的复用代码和循环重复代码的区别:
循环代码:
循环代码写完即执行,不能很方便控制执行位置
函数:
随时调用,随时执行,可重复调用
函数的传参
作用:极大的提高了函数的灵活性
形参:声明函数时写在函数名右边小括号里的叫形参(形式上的参数)
形参如果不被赋值,就是undefined
实参:调用函数时写在函数名右边小括号里的叫实参(实际上的参数)
形参可以理解为是
在这个函数内声明的
变量
(比如 num1 = 10)
实参
可以理解为是给这个
变量赋值
开发中尽量保持形参和实参个数一致,参数中间用逗号,符号隔开
我们曾经使用过的 alert('打印'), parseInt('11'), Number('11') 本质上都是函数调用的传参

函数的返回值:
当调用某个函数,这个函数会返回一个结果出来,而不是内部直接处理了
用return返回数据
在函数体中使用 return 关键字能将内部的执行结果交给函数外部使用
函数内部只能使用 1 次 return,并且 return 后面代码不会再被执行,所以
return 后面的数据不要换行写
return会立即结束当前函数
函数可以没有 return,这种情况函数默认返回值为 undefined
作用域的说明:
简单来说 就是在哪个位置可以作用
全局作用域:全局有效
作用于所有代码执行的 环境(整个 script 标签 内部)或者一个独立的 js 文件
局部作用域:局部有效
作用于函数内的代码环 境,就是局部作用域。 因为跟函数有关系,所以也称为函数作用域
块级作用域:一般在{}里面作用
块作用域由 { } 包括,if语 句和for语句里面的{ }等
变量的作用域:
如果函数内部或者块级作用域内部,变量没有声明,直接赋值,也当
全局变量
看,但是不推荐
函数内部的形参可以看做是局部变量。
变量访问原则
作用域链:采取
就近原则
的方式来查找变量最终的值
匿名函数:
语法:
function() {}
匿名函数赋值给一个变量,并且通过变量名称进行调用 我们将这个称为函数表达式
let fn= function() {}