Your Ad Here
首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 网站建设 > 网页制作 > Property assessor (getter/setter) in JavaScript
【标  题】:Property assessor (getter/setter) in JavaScript
【关键字】:Property,assessor,getter/setter,in,JavaScript
【来  源】:http://blog.csdn.net/hax/archive/2006/02/18/601921.aspx

Property assessor (getter/setter) in JavaScript

Your Ad Here

Is property assessor good or evil? C# thinks good and Java as contrast. What about JavaScript? Maybe yes, Maybe no...

Mozilla SpiderMonkey introduce variety of solutions for getter and setter. Here is the sample:

<html>
<head>
<script type="text/ecmascript">
function trace(msg) {
 document.getElementById('console').innerHTML += msg + '<br />';
}
</script>
</head>
<body>
<div id="console" class="debug"></div>
<script type="text/ecmascript" src="test-js-getset.js">
</script>
</body>
</html>

test-js-getset.js
=================

function test1() {
	
	var obj = {
		prop getter: function () { return 'prop1'; }
	};
	trace(obj.prop);
	
	obj.prop getter = function () { return 'prop2'; }
	trace(obj.prop);
	
	obj.prop getter = getter function () { return 'prop3'; }
	trace(obj.prop);
	
}

function test2() {
	
	function MyObj() {
		this.__defineGetter__('prop', function () { return 'prop1'; });
	}
	
	var obj = new MyObj();
	trace(obj.prop);
	
	obj.__defineGetter__('prop', function () { return 'prop2'; });
	trace(obj.prop);
	
}

function test3() {
	var obj = {
		foo: null,
		get prop() { return 'prop1'; },
		set prop(v) { trace(v); },
		bar: null,
	};
	trace(obj.prop);
	obj.prop = 'hello';
}

test1();
test2();
test3();

Unfortunately, M$ IE supports no one of above. And even codes of test1() and test3() will cause syntax error. Only test2() can be interpreted by IE, u can catch the exception for the absence of __defineGetter__. But nothing else can u do, because I found no solution of emulating __defineGetter__ in IE, though there are some tricks to make a object with properties via wrap vbscript or introduce htc.

VIPS算法对搜索引擎的意义[转载]:【上一篇】
关于VIPS算法的实现:【下一篇】
【相关文章】
  • 汉芯造假案-陈进与Jin Chen的对敲游戏
  • Spring AOP实际应用一例
  • Java Swing的新进展 -- JDK1.6 Swing GTK Look&Feel
  • 开启了我的第一个开源项目OpenMiner
  • Progamming style guidelines
  • 实例讲解-整合iBATIS和Spring在WEB开发中的应用
  • [翻译] Effective C++, 3rd Edition, Item 48: 感受 template metaprogramming(模板元编程)
  • 流行FrameWork整合之Spring??—— IoC反向控制篇
  • 流行FrameWork整合之Spring??—— IoC反向控制篇
  • Webwork 2.2的Action是否使用Spring的prototype?获取的性能对比
  • 【随机文章】
  • [转贴]配置管理流程
  • Photoshop快速制造三维立体按钮
  • sniffer原理
  • 在FC5的2080版内核上安装NV驱动
  • 收到ubuntu光盘了
  • Flash MX 新特性详解(目录)
  • 常用的,经典的C++网站
  • 如何规划校园网的主干网络
  • unix黑客精神的最好诠释
  • MYSQL监听指定IP
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 bbb软讯网络 All Rigths Reserved.