记录一下:

1.arguments是一个对象, 是函数的一个特性,只有在函数内才具有这个特性,在函数外部不用使用。

举例:

function test(){
  alert(typeof arguments); //object
}
 
 alert(typeof arguments);  //undefined

2.callee,caller

callee 表示当前正在使用的函数,例如 arguments.callee 表示test

caller 表示当前函数的调用者,如果在最顶层 那么就为 null ,如 test() 为 null ;test2() 为test

function test(){
    alert(arguments.callee);
    alert(arguments.callee.caller);
}
function test2(){
    test();
}
test();
test2();

3.apply,call

是函数原型的一个方法,调用者的类型必须是函数。官方解释:应用某一对象的一个方法,用另一个对象替换当前对象。简单的讲,就是对象置换

apply和call的区别:方法传递的参数不同

  fun.call(this, arg1,arg2,arg3) == fun.apply(this, arguments)==this.fun(arg1, arg2, arg3)

最新文章

  1. 基于Session的国际化实现
  2. Java多线程编程核心技术---对象及变量的并发访问(二)
  3. mysql基础 事务的认识和使用
  4. C#图片处理示例(裁剪,缩放,清晰度,水印)
  5. xml语法、DTD约束xml、Schema约束xml、DOM解析xml
  6. phpinfo详解
  7. PHP header 的几种用法
  8. uvalive 3971 - Assemble(二分搜索 + 贪心)
  9. HDU 4704 Sum (费马定理+快速幂)
  10. JAVA进阶-注解
  11. 【算法系列学习】SPFA邻接表最短路 [kuangbin带你飞]专题四 最短路练习 F - Wormholes
  12. 升级与修改Nginx
  13. vector 向量容器用法祥解
  14. Vue 限制input输入 限数字 或 小数点后两位number
  15. [Hibernate] 通过 properties 类和 hql 语句进行动态查询
  16. js 唤起APP
  17. Oracle_高级功能(10) 备份恢复
  18. 远程登录Linux(window下操作Linux)
  19. Android Notification的使用 - z
  20. Java使用独立数据库连接池(DBCP为例)

热门文章

  1. 普通for循环遍历LinkedList弊端
  2. 【转】ubuntu下如何将笔记本自带的键盘关闭
  3. C# RedisRateLimiter
  4. springboot拦截器注入service为空
  5. 030——VUE中鼠标语义修饰符
  6. SQLServer中通过脚本内容查找存储过程
  7. log4cpp之Appender
  8. ElasticSearch自定义分词器
  9. MoreEffectiveC++Item35(效率)(条款16-24)
  10. New Concept English three(21)