我的漫漫程序之旅

专注于JavaWeb开发

Javascript动态创建get,set方法的两种写法

<HTML>
 
<HEAD>
  
<TITLE> New Document </TITLE>
 
</HEAD>

 
<BODY>
 
<script>
    
//创建一个User类
    function User(properties)
    
{
        
//遍历所有的属性
        for(var i in properties)
        
{
            
// inner function
            (function(i)
            
{
                
//get method
                this["get" + i] = function()
                
{
                    
return properties[i];
                }
;
                
//set method
                this["set" + i]  = function(val)
                
{
                    properties[i] 
= val;
                }

            }
).call(this,i);
        }

    }


    
var me = new User({name:"zdw",age:44});
    document.write(me.getname());
    me.setname(
"admin");
    document.write(
"<br />" + me.getname());
    document.write(
"<br />" + me.getage());

    
//第二种写法
    function Person(properties)
    
{
        
var _this = this;
        
for(var i in properties)
        
{
            (
function(i)
            
{
                _this[
"get" + i] = function()
                
{
                    
return properties[i];
                }


                _this[
"set" + i] = function(val)
                
{
                    properties[i] 
= val;
                }

            }
)(i);
        }

    }


    
var you = new Person({name:"admin",age:999});
    alert(you.getname() 
+ "\n" +  you.getage());
    you.setname(
"angel");
    alert(you.getname() 
+ "\n" +  you.getage());
 
</script>
 
</BODY>
</HTML>

posted on 2008-07-21 13:39 々上善若水々 阅读(21) 评论(0)  编辑  收藏 所属分类: JavaScript


标题  
姓名  
主页
验证码 *  
内容(请不要发表任何与政治相关的内容)  
  登录  使用高级评论  新用户注册  返回页首  恢复上次提交      
 
 

相关链接:
网站导航:

导航

<2008年12月>
30123456
78910111213
14151617181920
21222324252627
28293031123
45678910

统计

留言簿(12)

随笔档案(24)

文章分类(277)

文章档案(228)

搜索

最新评论

阅读排行榜

评论排行榜