function Employee(name,sex) { this.name=name; this.sex=sex; }var zhangsan=new Employee("张三","男"); alert(zhangsan.name);zhangsan.sex="女"; alert(zhangsan.sex);
我的问题主要是界面上用户选择员工信息时,有时选择员工姓名与性别,有时选择员工姓名、性别、出生日期等,即选择内容的标题是未知的,现在想生成一个对象,根据用户选择内容的标题来动态生成该对象的属性以保存用户选择标题的内容。 即若用户选择员工名称为张三、性别为男的信息时,则生成对象如下: var employ = new Object(); employ.NAME='张三'; employ.SEX='男'; 若用户选择员工名称为张三、出生日期为2001-1-1的信息时,则生成对象如下: var employ = new Object(); employ.NAME='张三'; employ.BIRTHDATE = '2001-1-1'; 等,即employ对象的NAME、SEX、BIRTHDATE……等属性的名称是未知的,只有用户选择完成后才能知道,怎么根据用户的选择动态生成这些属性呢?
<script> var employ = new Array(); employ.employName='张三';//在属性前加个employ,以避免与关键字冲突 employ.employSex='男';alert(employ.employName); alert(employ["employName"]); </script>
<script>var tempProperty="name"; var tempPropertyValue="张三"; var employ=new Array(); employ["employ"+tempProperty]=tempPropertyValue;//在属性前加个employ,以避免属性名与关键字冲突alert(employ.employname); alert(employ["employname"]); </script>
{
this.name=name;
this.sex=sex;
}var zhangsan=new Employee("张三","男");
alert(zhangsan.name);zhangsan.sex="女";
alert(zhangsan.sex);
即若用户选择员工名称为张三、性别为男的信息时,则生成对象如下:
var employ = new Object();
employ.NAME='张三';
employ.SEX='男';
若用户选择员工名称为张三、出生日期为2001-1-1的信息时,则生成对象如下:
var employ = new Object();
employ.NAME='张三';
employ.BIRTHDATE = '2001-1-1';
等,即employ对象的NAME、SEX、BIRTHDATE……等属性的名称是未知的,只有用户选择完成后才能知道,怎么根据用户的选择动态生成这些属性呢?
var employ = new Array();
employ.employName='张三';//在属性前加个employ,以避免与关键字冲突
employ.employSex='男';alert(employ.employName);
alert(employ["employName"]);
</script>
能否通过eval等方法动态生成?
var tempPropertyValue="张三";
var employ=new Array();
employ["employ"+tempProperty]=tempPropertyValue;//在属性前加个employ,以避免属性名与关键字冲突alert(employ.employname);
alert(employ["employname"]);
</script>