获取行中的所有值

时间:2011-04-13 06:37:19

标签: javascript

var patientInfo = {}   
patientInfo.patientID = row.patientID;
patientInfo.firstName = row.firstName;
patientInfo.lastName = row.lastName;
patientInfo.dateOfBirth = row.DateOfBirth;
patientInfo.age = row.age;
patientInfo.gender = row.gender;

当我打印I patientInfo时,我只获得一行数据...如何获取所有行的数据?

2 个答案:

答案 0 :(得分:2)

不太清楚你的意思。但假设您在循环中使用此代码,则始终会覆盖patientInfo数据。将它们添加到数组中:

infos = []

for(.....) {
    var patientInfo = {}   
    patientInfo.patientID = row.patientID;
    patientInfo.firstName = row.firstName;
    patientInfo.lastName = row.lastName;
    patientInfo.dateOfBirth = row.DateOfBirth;
    patientInfo.age = row.age;
    patientInfo.gender = row.gender;

    infos.push(patientInfo)
}

最好知道row来自哪里。也许你可以做:

infos = []

for(.....) {
    infos.push(row)
}

或者你可能根本不需要这样做。您必须提供更多信息。

更多信息=>更好的答案。

答案 1 :(得分:1)

要迭代对象中的属性,请使用for in

for (var property in patientInfo) {
   alert(property);
}

但请注意,如果有人增加了Object,那么其可枚举属性也将被迭代。

您可以使用hasOwnProperty()来缓解此问题。

for (var property in patientInfo) {
   if ( ! patientInfo.hasOwnProperty(property)) {
       continue;
   }
   alert(property);
}

或者,您可以指定自己的toString()方法,根据需要格式化值。一定要返回一个字符串。