函数:把一些重复的代码块封装在一个地方,在需要的时候直接调用这个地方的代码就可以了
函数作用:代码重用
函数的参数:
1.形参:函数定义的时候,函数名字后面的小括号里的变量
2.实参:函数调用的时候,函数名字后面的小括号里的变量或者值
返回值:
函数中有return,函数有返回值
函数中没有return,函数没有返回值
没有明确的返回值:函数中没有return或者return后面没有内容
如果一个函数没有明确的返回值,接受这个函数,结果是undefined
无参数无返回值的函数
无参数有返回值的函数
有参数无返回值的函数
有参数有返回值的函数
arguments-----可以获取函数调用的时候,传入的实参的个数
arguments是一个对象,是一个伪数组
arguments.length------是实参的个数
arguments[索引]----实参的值
作用域:变量的使用范围
全局作用域:全局变量在任何位置都可以使用的范围
局部作用域:局部变量只能在某个地方使用---函数内
作用域链:在一个函数中使用一个变量,先在该函数中搜索这个变量,找到了则使用,找不到则继续向外面找这个变量,找到则使用,一直找到全局作用域,找不到则是undefined
全局变量:只要是在函数外面声明的变量都可以看作或是理解成全局变量
局部变量:在函数中定义的变量
预解析:在执行代码前做的事情
变量的声明核函数的声明被提前了,变量和函数的声明会提升到当前所在的作用域的最上面
函数的变量声明,会提升到该函数的作用域的最上面(里面)
如果有多对的script标签都有相同名字的函数,预解析的时候是分段的,互不影响