js学习之arguments,callee,caller,call,appy 笔记
2008-12-26 13:58
417 查看
arguments.length 参数个数
Array.prototype.selfvalue = 1; 定义数组原型初始值
selfvalue 初始值
arguments[i] 获取参数个数从0开始
即arguments并不是一个数组对象。
caller 是否被调用
对于函数来说,caller 属性只有在函数执行时才有定义。如果函数是由顶层调用的,那么 caller 包含的就是 null 。
function callerDemo() {
if (callerDemo.caller) {//是否被调用
var a= callerDemo.caller.toString();
alert(a);
} else {
alert("this is a top function");
}
}
function handleCaller() {
callerDemo();
}
//callerDemao -----this is a top function
//handlecaller------a
callee
返回正被执行的 Function 对象,也就是所指定的 Function 对象的正文。
//callee可以打印其本身
function calleeDemo() {
alert(arguments.callee);
}
//用于验证参数
function calleeLengthDemo(arg1, arg2) {
if (arguments.length==arguments.callee.length) {
window.alert("验证形参和实参长度正确!");
return;
} else {
alert("实参长度:" +arguments.length);
alert("形参长度: " +arguments.callee.length);
}
}
apply and call
它们的作用都是将函数绑定到另外一个对象上去运行,两者仅在定义参数方式有所区别:
apply(thisArg,argArray);
call(thisArg[,arg1,arg2…] ]);
Array.prototype.selfvalue = 1; 定义数组原型初始值
selfvalue 初始值
arguments[i] 获取参数个数从0开始
即arguments并不是一个数组对象。
caller 是否被调用
对于函数来说,caller 属性只有在函数执行时才有定义。如果函数是由顶层调用的,那么 caller 包含的就是 null 。
function callerDemo() {
if (callerDemo.caller) {//是否被调用
var a= callerDemo.caller.toString();
alert(a);
} else {
alert("this is a top function");
}
}
function handleCaller() {
callerDemo();
}
//callerDemao -----this is a top function
//handlecaller------a
callee
返回正被执行的 Function 对象,也就是所指定的 Function 对象的正文。
//callee可以打印其本身
function calleeDemo() {
alert(arguments.callee);
}
//用于验证参数
function calleeLengthDemo(arg1, arg2) {
if (arguments.length==arguments.callee.length) {
window.alert("验证形参和实参长度正确!");
return;
} else {
alert("实参长度:" +arguments.length);
alert("形参长度: " +arguments.callee.length);
}
}
apply and call
它们的作用都是将函数绑定到另外一个对象上去运行,两者仅在定义参数方式有所区别:
apply(thisArg,argArray);
call(thisArg[,arg1,arg2…] ]);
相关文章推荐
- JavaScript中的arguments,callee,caller,call,appy的用法
- JavaScript中的arguments,callee,caller,call,appy
- ECMAScript 中的call、apply、arguments、caller和callee的学习
- JavaScript中的arguments,callee,caller,call,appy
- JavaScript中的arguments,callee,caller,call,appy
- JavaScript中的arguments,callee,caller,call,appy
- js中的arguments,apply,call,callee,caller
- JavaScript中的arguments,callee,caller,call,appy
- JavaScript中的arguments,callee,caller,call,appy
- JavaScript中的arguments,callee,caller,call,appy [备忘]
- JavaScript中的arguments,callee,caller,call,appy
- 【JS进阶1】arguments,caller,callee,call,apply概念
- JavaScript中的arguments,callee,caller,call,appy [备忘]
- javascript学习笔记--理解apply()、call()、bind() 以及caller、callee属性
- JavaScript中的arguments,callee,caller,call,appy
- JavaScript arguments,callee,caller,call,appy
- JavaScript中的arguments,callee,caller,call,appy
- JavaScript中的arguments,callee,caller,call,appy
- JavaScript中的arguments,callee,caller,call,appy