1. 创建函数的三种方式:
function box(num1, num2){
return num1 + num2;
}
var box = function (num1, num2) {
return num1 + num2;
}
var box = new Function('num1', 'num2', 'return num1 + num2;'); //此种方式不推荐
2. 函数的this和arguments参数
this代表函数作用域对象
arguments是函数的参数数组
3. 使用arguments.callee实现函数递归
function box(num) {
if (num <=1) {
return 1;
}
return arguments.callee(num-1) * num;
}
4. 是用apply或call改变函数调用作用域
var box = {
"color": "blue"
};
function sayColor() {
alert(this.color);
}
sayColor.apply(box, arguments);
sayColor.call(box);