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函数,php爱好者站推荐
Mar 19 PHP
简单示例AJAX结合PHP代码实现登录效果代码
Jul 25 PHP
PHP无敌近乎加密方式!
Jul 17 PHP
提升PHP性能的21种方法介绍
Jun 25 PHP
php file_get_contents抓取Gzip网页乱码的三种解决方法
Nov 12 PHP
php 判断网页是否是utf8编码的方法
Jun 06 PHP
浅析get与post的一些特殊情况
Jul 28 PHP
Linux下PHP加速器APC的安装与配置笔记
Oct 24 PHP
php使用数组填充下拉列表框的方法
Mar 31 PHP
php通过会话控制实现身份验证实例
Oct 18 PHP
PHP实现超简单的SSL加密解密、验证及签名的方法示例
Aug 28 PHP
php打开本地exe程序,js打开本地exe应用程序,并传递相关参数方法
Feb 06 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使用smtp发送支持附件的邮件示例
2014/04/13 PHP
PHP代码判断设备是手机还是平板电脑(两种方法)
2015/10/19 PHP
PHP长连接实现与使用方法详解
2018/02/11 PHP
jquery 常用操作方法
2010/01/28 Javascript
js 模拟气泡屏保效果代码
2010/07/10 Javascript
js下写一个事件队列操作函数
2010/07/19 Javascript
JQuery中判断一个元素下面是否有内容或者有某个标签的判断代码
2012/02/02 Javascript
jQuery+PHP打造滑动开关效果
2014/12/16 Javascript
浅谈setTimeout 与 setInterval
2015/06/23 Javascript
微信小程序  modal弹框组件详解
2016/10/27 Javascript
jQuery的事件预绑定
2016/12/05 Javascript
基于easyui checkbox 的一些操作处理方法
2017/07/10 Javascript
JS和JQuery实现雪花飘落效果
2017/11/30 jQuery
微信小程序实现漂亮的弹窗效果
2020/05/26 Javascript
js 实现 list转换成tree的方法示例(数组到树)
2019/08/18 Javascript
Nodejs使用archiver-zip-encrypted库加密压缩文件时报错(解决方案)
2019/11/18 NodeJs
js实现多图和单图上传显示
2019/12/18 Javascript
vue项目实现图片上传功能
2019/12/23 Javascript
javascript读取本地文件和目录方法详解
2020/08/06 Javascript
打包发布Python模块的方法详解
2016/09/18 Python
python如何实现从视频中提取每秒图片
2020/10/22 Python
Python 为什么推荐蛇形命名法原因浅析
2020/06/18 Python
中国旅游网站:同程旅游
2016/09/11 全球购物
加拿大时尚少女服装品牌:Garage
2016/10/10 全球购物
美国床垫连锁店:Mattress Firm
2021/02/13 全球购物
三个儿子教学反思
2014/02/03 职场文书
人力资源部经理的岗位职责
2014/03/04 职场文书
物流管理专业毕业生自荐信
2014/03/04 职场文书
小学教师师德演讲稿
2014/05/06 职场文书
2015年质量管理工作总结范文
2015/05/18 职场文书
荒岛余生观后感
2015/06/09 职场文书
运动会闭幕式通讯稿
2015/07/18 职场文书
新闻通讯稿范文
2015/07/22 职场文书
导游词之无锡唐城
2019/12/12 职场文书
python pygame 开发五子棋双人对弈
2022/05/02 Python
使用Redis实现分布式锁的方法
2022/06/16 Redis