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 相关文章推荐
用函数读出数据表内容放入二维数组
Oct 09 PHP
dede3.1分页文字采集过滤规则详说(图文教程)
Apr 03 PHP
Base64在线编码解码实现代码 演示与下载
Jan 08 PHP
PHP gbk环境下json_dencode传送来的汉字
Nov 13 PHP
将php数组输出html表格的方法
Feb 24 PHP
ASP和PHP实现生成网站快捷方式并下载到桌面的方法
May 08 PHP
腾讯微博提示missing parameter errorcode 102 错误的解决方法
Dec 22 PHP
PHP实现抓取迅雷VIP账号的方法
Jul 30 PHP
php之可变函数的实例详解
Sep 13 PHP
利用PHP计算有多少小于当前数字的数字方法示例
Aug 26 PHP
有关PHP 中 config.m4 的探索
Aug 26 PHP
PHP延迟静态绑定使用方法实例解析
Sep 05 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读取IMAP邮件
2006/10/09 PHP
一个PHP的QRcode类与大家分享
2011/11/13 PHP
php实现zip压缩文件解压缩代码分享(简单易懂)
2014/05/10 PHP
php文件扩展名判断及获取文件扩展名的N种方法
2015/09/12 PHP
学习php设计模式 php实现工厂模式(factory)
2015/12/07 PHP
php工具型代码之印章抠图
2018/07/18 PHP
修改jQuery.Autocomplete插件 支持中文输入法 避免TAB、ENTER键失效、导致表单提交
2009/10/11 Javascript
json格式化/压缩工具 Chrome插件扩展版
2010/05/25 Javascript
javascript instanceof 内部机制探析
2010/10/15 Javascript
让ie6也支持websocket采用flash封装实现
2013/02/18 Javascript
千分位数字格式化(用逗号隔开 代码已做了修改 支持0-9位逗号隔开)的JS代码
2013/12/05 Javascript
浅析JavaScript中的同名标识符优先级
2013/12/06 Javascript
JavaScript实现自动变换表格边框颜色
2015/05/08 Javascript
jQuery添加和删除指定标签的方法
2015/12/16 Javascript
Vue.js教程之计算属性
2016/11/11 Javascript
Angular2利用组件与指令实现图片轮播组件
2017/03/27 Javascript
10个在JavaScript开发中常遇到的BUG
2017/12/18 Javascript
React中常见的动画实现的几种方式
2018/01/10 Javascript
详解nodeJs文件系统(fs)与流(stream)
2018/01/24 NodeJs
vue.js多页面开发环境搭建过程
2019/04/24 Javascript
微信小程序左滑删除实现代码实例
2019/09/16 Javascript
基于vue.js仿淘宝收货地址并设置默认地址的案例分析
2020/08/20 Javascript
使用Python脚本对Linux服务器进行监控的教程
2015/04/02 Python
python多进程中的内存复制(实例讲解)
2018/01/05 Python
Python退火算法在高次方程的应用
2018/07/26 Python
pyqt5与matplotlib的完美结合实例
2019/06/21 Python
python中class的定义及使用教程
2019/09/18 Python
python turtle 绘制太极图的实例
2019/12/18 Python
StubHub意大利:购买和出售全球演唱会和体育赛事门票
2017/11/21 全球购物
便利店投资的创业计划书
2014/01/12 职场文书
应届生求职自荐信范文
2014/04/07 职场文书
应届大专毕业生自我鉴定
2014/04/08 职场文书
服务行业演讲稿
2014/09/02 职场文书
收费员岗位职责
2015/02/14 职场文书
后勤个人工作总结
2015/02/28 职场文书
面试通知单大全
2015/04/20 职场文书