博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
js call(),apply(),对象冒充,改变变量作用域
阅读量:4640 次
发布时间:2019-06-09

本文共 635 字,大约阅读时间需要 2 分钟。

1.apply();

function box(n1,n2){    return n1+n2;}function pox(n1,n2){    alert(box.apply(this,[n1,n2]));   //this指window下全局属性                                      //这里没有返回值,没有运算,通过冒充box里的运算来执行}pox(10,20);        //30

注:如果参数过多,冒充对象传参的时候可以写成arguments

function box(n1,n2){    return n1+n2;}function pox1(n1,n2){    alert(box.apply(this,arguments));}pox1(10,30);    //得到40

2.call()

function box(n1,n2){    return n1+n2;}//call和apply只是传参形式不同,其他都一样function pox2(n1,n2){    alert(box.call(this,n1,n2));} pox2(20,0);    //20

3.call()和apply()最大的好处,就是对象不需要与方法发生任何关联.对象和方法不会有多余的关联操作,对程序的维护提供便利

转载于:https://www.cnblogs.com/xiaoxinzi/p/8516287.html

你可能感兴趣的文章
python编码问题
查看>>
POJ 2031 Building a Space Station
查看>>
面向对象1
查看>>
编程开发之--java多线程学习总结(5)
查看>>
register_globals(全局变量注册开关)
查看>>
as3调用外部swf里的类的方法
查看>>
如何让 zend studio 10 识别 Phalcon语法并且进行语法提示
查看>>
任意阶幻方(魔方矩阵)C语言实现
查看>>
视频教程--ASP.NET MVC 使用 Petapoco 微型ORM框架+NpgSql驱动连接 PostgreSQL数据库
查看>>
第五次作业
查看>>
织梦教程
查看>>
杭电多校 Harvest of Apples 莫队
查看>>
java 第11次作业:你能看懂就说明你理解了——this关键字
查看>>
C/C++心得-结构体
查看>>
函数名作为参数传递
查看>>
apt-get for ubuntu 工具简介
查看>>
数值计算算法-多项式插值算法的实现与分析
查看>>
day8-异常处理与网络编程
查看>>
Python基础-time and datetime
查看>>
Linux epoll 笔记(高并发事件处理机制)
查看>>