php方法调用模式与函数调用模式简例


Posted in PHP onSeptember 20, 2011

现有某函数与对象如下:

var doubling=function(x){ 
return x*2; 
}; 
var obj={ 
val:100, 
};

函数调用模式时,this被绑定到全局对象。这种情况在对象的属性与方法被初始化时也能够得到反应。现为ojb进行补充如下:
var obj={val:100, 
prop:function(){ 
var that=this; 
document.write('name: '+that+'; type: '+typeof(that)+'<br/>'); 
return doublling(that.val); 
}(), 
get_prop:function(){ 
var that=this; 
document.write('name: '+that+'; type: '+typeof(that)+'<br/>'); 
return doublling(that.val); 
}, 
};

prop使用一个被执行的匿名函数,期望取得所在对象的val值被函数调用模式的doubling()运算的结果;而get_prop为方法调用模式。
脚本加载的时候,obj的属性prop初始化时,语句"name: [object Window]; type: object"输出,使用obj.get_prop()时,语句"name: [object Object]; type: object"输出。前者表明函数体的"this"为全局变量window,后者如所期待的为obj本身。
可以检查属性prop和方法get_prop()的返回值,前者对window对象进行乘法运算,返回NaN,后者等于200。
在obj字面量表达式之外,期望设置new_prop属性和new_get_prop()方法,结果将与前文一致,方法调用模式才会获得this对本身的绑定。
PHP 相关文章推荐
PHP操作xml代码
Jun 17 PHP
php处理文件的小例子(解压缩,删除目录)
Feb 03 PHP
基于MySQL分区性能的详细介绍
May 02 PHP
php curl post 时出现的问题解决
Jan 30 PHP
destoon实现VIP排名一直在前面排序的方法
Aug 21 PHP
ThinkPHP中的三大自动简介
Aug 22 PHP
PHP中ini_set与ini_get用法实例
Nov 04 PHP
了解PHP的返回引用和局部静态变量
Jun 04 PHP
PHP自带方法验证邮箱、URL、IP是否合法的函数
Dec 08 PHP
php获取访问者浏览页面的浏览器类型
Jan 23 PHP
PHP+jQuery实现双击修改table表格功能示例
Feb 21 PHP
阿里云服务器搭建Php+Apache运行环境的详细过程
May 15 PHP
php若干单维数组遍历方法的比较
Sep 20 #PHP
PHP学习笔记 用户注册模块用户类以及验证码类
Sep 20 #PHP
PHP无刷新上传文件实现代码
Sep 19 #PHP
PHP通过正则表达式下载图片到本地的实现代码
Sep 19 #PHP
PHP下利用shell后台运行PHP脚本,并获取该脚本的Process ID的代码
Sep 19 #PHP
php去除重复字的实现代码
Sep 16 #PHP
PHP与SQL注入攻击防范小技巧
Sep 16 #PHP
You might like
一个php作的文本留言本的例子(四)
2006/10/09 PHP
PHPEXCEL 使用小记
2013/01/06 PHP
如何使用PHP批量去除文件UTF8 BOM信息
2013/08/05 PHP
Yii配置文件用法详解
2014/12/04 PHP
PHP之浮点数计算比较以及取整数不准确的解决办法
2015/07/29 PHP
jQuery EasyUI API 中文文档 - Form表单
2011/10/06 Javascript
js实现tab选项卡切换功能
2017/01/13 Javascript
响应式框架Bootstrap栅格系统的实例
2017/12/19 Javascript
JavaScript判断日期时间差的实例代码
2018/03/01 Javascript
vue接入腾讯防水墙代码
2019/05/07 Javascript
js利用递归与promise 按顺序请求数据的方法
2019/08/30 Javascript
Angular8 实现table表格表头固定效果
2020/01/03 Javascript
解决vuex刷新数据消失问题
2020/11/12 Javascript
python共享引用(多个变量引用)示例代码
2013/12/04 Python
python实现无证书加密解密实例
2014/10/27 Python
Python3字符串学习教程
2015/08/20 Python
python高手之路python处理excel文件(方法汇总)
2016/01/07 Python
pandas.DataFrame删除/选取含有特定数值的行或列实例
2018/11/07 Python
Python PIL读取的图像发生自动旋转的实现方法
2019/07/05 Python
Python 离线工作环境搭建的方法步骤
2019/07/29 Python
python数值基础知识浅析
2019/11/19 Python
用Python去除图像的黑色或白色背景实例
2019/12/12 Python
Anconda环境下Vscode安装Python的方法详解
2020/03/29 Python
测试时代收集的软件测试面试题
2013/09/25 面试题
博士生入学考试推荐信
2013/11/17 职场文书
高中毕业的自我鉴定
2013/12/09 职场文书
《每逢佳节倍思亲》教后反思
2014/04/19 职场文书
旅游文化节策划方案
2014/06/06 职场文书
运动会400米加油稿(8篇)
2014/09/22 职场文书
向国旗敬礼学生寄语大全
2014/09/30 职场文书
交通事故委托书范本精选
2014/10/04 职场文书
2014年办公室文员工作总结
2014/11/12 职场文书
2015年教师学期工作总结
2015/04/30 职场文书
教师学习中国梦心得体会
2016/01/05 职场文书
Python通过loop.run_in_executor执行同步代码 同步变为异步
2022/04/11 Python
Python编写冷笑话生成器
2022/04/20 Python