js函数的定义

*什么是函数?功能是什么?
函数是一个功能模块,可以被复用(重用)
*在js中如何声明一个函数?
1)命名函数
语法:
function 函数名([参数列表]){
//功能代码
}
1.1)不带参数的函数
function 函数名(){
//功能代码
}

1.2)带参数的函数
function 函数名(参数列表){
//功能代码
}
注意1:函数内的参数列表就是接受数据的变量,我们称之为形参,
形参声明的时候不能加var,直接给变量名
调用函数的时候传递过去的数据叫“实参”
注意2:在函数对象内部其实一个名字叫arguments的属性,它是一个数组,里面存放的是
传过来的实参。推荐使用书写形参的方式。

1.3)带返回值的函数。
function 函数名([参数列表]){
return [数据];
}

一个函数通过return 关键字来向调用者返回处理结果。
记住一个函数同时只能返回一个结果。

2)匿名函数(函数表达式)
语法:
var fn=function([参数列表]){
//函数体
}


3)使用Function来构建函数

*如何去调用函数,有以下几种方式:
1)函数名();//调用无参数的函数 ,
注意点:命名函数调用的时候在函数的声明前后都可以。匿名函数必须在声明好以后才能
调用。
2)以call()方法来调用函数
语法:
函数名.call(调用者,参数1,参数2,.....);
show.call(window,"张三",32);
3)以apply()方法来调用函数
函数名.apply(调用者,[参数数组]);
show.apply(window,["张三",32]);


typeof 用来判断基本类型的,比如number,boolean string undefinded
instanceOf 用来判断是否是一个类型的对象。Array(数组类型)Object(对象类型)

*一个函数可以作为另一个函数的参数。
*一个函数可以作为返回值来进行返回,往往把返回的函数赋值给一个变量。

变量的作用域:*****
--变量的使用范围,变量的作用于决定了变量的生命周期。
--js中的作用域有两种,一种叫"函数作用域",另一种叫"全局作用域".

**函数作用域:
--声明在函数中的变量我们称之为"函数的局部变量",函数调用的时候会在函数的作用域中
创建这个变量,当函数执行完后,此局部变量就会销毁。
--声明在函数外部的变量我们称之为 "全局变量",全局变量都可以被其它的函数访问。
--全局的变量它所对应的作用域对象是window对象。
**作用域链:
先找本作用域中的数据,找不到再找全局作用域中的数据。---这就是作用域链
---------------------

猜你喜欢

转载自www.cnblogs.com/ximao/p/9815407.html