`
jickcai
  • 浏览: 238714 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

set和get方法动态添加,这些方法在新对象实例化时创建

 
阅读更多

动态生成方法的例子,这些方法在新对象实例化时创建:

//创建一个新的用户对象,接受一个有许多属性的对象作为参数

function User(properties){

//遍历对象的所有属性,并保证其作用域正确
 for(var i in properties){
  (function(which){
   var p=i;

//创建此属性的一个新的读取器(getter)
   which["get"+p]=function(){
    return properties[p];
   };

//创建此属性的一个新的设置器(setter)
   which["set"+p]=function(val){
    properties[p]=val;
   };
  })(this);
 }
}

//创建一个新的用户对象实例,并把具有两个属性的一个对象传入作为种子

var user=new User({name:"Bob",age:44});
alert(user.getname());//输出 Bob
alert(user.getage());//输出 44
user.setage(22);
alert(user.getage()); //输出22

分享到:
评论

相关推荐

    java实现数组实例化一个类

    用java语言编写,实现了一个student类,定义了三个属性,并写了set和get 方法,最后用数组实例化这个类。

    《Java程序设计》课程实验指导书程序代码(答案)(实验三)

    2. (第2题) 定义类Point及它的属性、方法和构造函数,定义主类和main(),在main()方法中创建两个坐标对象,,并通过对象调用getMiddle方法后得到一个新的点坐标,调用show()显示该对象的坐标值。 3. (第3题)定义一...

    C# DataTable 转换为 实体类对象实例

    } } //对应数据库表: //User //字段:ID、Name 那么你也许需要编写将DataTable 转换为实体对象的方法,便利DataTable.Rows 获得并填充。。 下面是我写的一个通用方法,分享+记录,便于日后直接Copy ~ 代码如下:...

    Java面向对象程序设计方案练习题(1).doc

    最后在测试类Vehicle中的main()中实例化一个交通工具对象 并通过方法给它初始化sp eed,size的值 并且通过打印出来。另外 调用加速 减速的方法对速度进行改变。 【练习题】03.类的成员变量与方法、构造方法 在程序中...

    测试类TestPersonal

    设计一个Personal类: (1)该类有实例变量(属性)name、age、sex; (2)一个无参构造函数和一个有参构造函数;...(3)一组用于访问实例变量的set/get方法。 再设计一个测试类TestPersonal,测试该类。

    PHP面向对象技术_全面讲解

    5.如何实例化对象 6.如何去使用对象中的成员 7.特殊的引用“$this“的使用 8.构造方法与析构方法 9.封装性 10.__set() __get() __isset() __unset()四个方法的应用 11.类的继函 12.多态的应用 13.重载新的方法 14....

    PHP 面向对象技术(全面讲解).txt

    方法,实例化出来的对象里面就包含了这些属性和方法。 对像在PHP 里面和整型、浮点型一样,也是一种数据类,都是存储不同类型数据用的,在运行 的时候都要加载到内存中去用, 那么对象在内存里面是怎么体现的呢?...

    Java面向对象程序设计方案练习题.doc

    最后在测试类Vehicle中的main()中实例化一个交通工具对象 并通过方法给它初始化sp eed,size的值 并且通过打印出来。另外 调用加速 减速的方法对速度进行改变。 【练习题】03.类的成员变量与方法、构造方法 在程序中...

    PHP开发实战1200例(第1卷).(清华出版.潘凯华.刘中华).part2

    实例024 Dreamweaver中创建和附加CSS样式 42 实例025 Dreamweaver控制弹出信息 45 实例026 Dreamweaver控制浏览器的窗口 46 实例027 通过Dreamweaver创建站点 47 实例028 通过Dreamweaver开发第1个PHP程序 48 1.7 ...

    PHP面向对象技术(全面讲解)

    本部分一共包括以下一些技术点:...如何实例化对象?  6.如何去使用对象中的成员?  7.特殊的引用“$this”的使用  8.构造方法与析构方法  9.封装性  10.__set()、 __get()、 __isset()、 __unset()四个方法的应用

    php5面向对象详解

    5.如何实例化对象 6.如何去使用对象中的成员 7.特殊的引用“$this“的使用 8.构造方法与析构方法 9.封装性 10.__set() __get() __isset() __unset()四个方法的应用 11.类的继函 12.多态的应用 13.重载新的方法 14....

    php面向对象技术

    5.如何实例化对象? 6.如何去使用对象中的成员? 7.特殊的引用“$this”的使用 8.构造方法与析构方法 9.封装性 10.__set()、__get()、__isset()、__unset()四个方法的应用 11.类的继承 12.多态的应用 13.重载新的...

    基于Java实现用类描述计算机中CPU的速度和硬盘的容量【100012713】

    1.PC 类中设置几个属性,创建这些属性的 get,set 方法,用来传值;传创建两个构造方法用来初始化属性的值;写一个普通方法,用来输出相关内容。 2.CPU 类中设置几个属性,创建这些属性的 get,set 方法,用来传值...

    PHP面向对象技术(全面讲解)(高洛峰)

    5.如何实例化对象 6.如何去使用对象中的成员 7.特殊的引用“$this“的使用 8.构造方法与析构方法 9.封装性 10.__set() __get() __isset() __unset()四个方法的应用 11.类的继函 12.多态的应用 13.重载新的方法 14....

    PHP面向对象各个功能步骤详解OOP思想

    5.如何实例化对象 6.如何去使用对象中的成员 7.特殊的引用“$this“的使用 8.构造方法与析构方法 9.封装性 10.__set() __get() __isset() __unset()四个方法的应用 11.类的继函 12.多态的应用 13.重载新的方法 14....

    PHP开发实战1200例(第1卷).(清华出版.潘凯华.刘中华).part1

    实例024 Dreamweaver中创建和附加CSS样式 42 实例025 Dreamweaver控制弹出信息 45 实例026 Dreamweaver控制浏览器的窗口 46 实例027 通过Dreamweaver创建站点 47 实例028 通过Dreamweaver开发第1个PHP程序 48 1.7 ...

    精通Hibernate:对象持久化技术第二版part3

    本章主要介绍单个持久化类与单个数据库表之间进行映射的方法,尤其是当持久化类的属性不和数据库表的字段一一对应时的映射技巧。 5.1 持久化类的属性及访问方法 101 5.1.1 基本类型属性和包装类型属性 102 5.1.2 ...

    精通hibernate:对象持久化技术孙卫琴第二版part2

    本章主要介绍单个持久化类与单个数据库表之间进行映射的方法,尤其是当持久化类的属性不和数据库表的字段一一对应时的映射技巧。 5.1 持久化类的属性及访问方法 101 5.1.1 基本类型属性和包装类型属性 102 5.1.2 ...

    通过构造函数实例化对象的方法

    * @Data 编译后会自动生成set、get、无惨构造、equals、canEqual、hashCode、toString方法 */ @Data public class Person { private String name; private int age; public Person(String name){ this.name = ...

Global site tag (gtag.js) - Google Analytics