Javascript 迭代此响应
这是我得到的响应,我想迭代并打印标题值。。。在文本框中Javascript 迭代此响应,javascript,Javascript,这是我得到的响应,我想迭代并打印标题值。。。在文本框中 { 'lastChangedName': null'Caption': 'Adhesive Tape', 'CreateByID': 0, 'DateOnSet': '02/10/2011', 'Note': 'Currently participating in Allergy shots to resolve this', 'Reaction': 'skin rash', 'SectionDescription'
{
'lastChangedName': null'Caption': 'Adhesive Tape',
'CreateByID': 0,
'DateOnSet': '02/10/2011',
'Note': 'Currently participating in Allergy shots to resolve this',
'Reaction': 'skin rash',
'SectionDescription': 'Allergy List',
'HistoryItemID': 1831,
'CurrentInDrFirst': 0,
'CreateDate': '/Date(1297674300000-0500)/',
'Code': '3746',
'PL': '1',
'Problem': {
"LastChargedByUserID": 0,
"LastChargedDate": null,
"ProblemStatus": 1003,
"DateResolved": "12\/2\/11",
"PatientID": 0,
"ProblemID": 1330
},
'CategoryDescription': null,
'CategoryID': 0,
'CodeSystem': 'FDBDRUG',
'SectionID': 3,
'LastChangedID': 0,
},
{
'lastChangedName': null'Caption': 'Cats',
'CreateByID': 0,
'DateOnSet': '6/4/1997',
'Note': '0',
'Reaction': 'Sneezing',
'SectionDescription': 'Allergy List',
'HistoryItemID': 1925,
'CurrentInDrFirst': 0,
'CreateDate': '/Date(1299176220000-0500)/',
'Code': '',
'PL': '1',
'Problem': {
"LastChargedByUserID": 0,
"LastChargedDate": null,
"ProblemStatus": 1002,
"DateResolved": null,
"PatientID": 0,
"ProblemID": 1331
},
'CategoryDescription': null,
'CategoryID': 0,
'CodeSystem': '',
'SectionID': 3,
'LastChangedID': 0,
}
这只打印了第一个标题。引用的回答很尴尬,因为有一系列匿名对象用逗号分隔(你可能认为这是无效的,但不是,只是没有帮助)。(假设您修复了symcbean在评论中指出的
'lastChangedName':null'Caption'
问题;我假设这是一个复制粘贴错误。)我认为这肯定比引用的内容更多。(它是否在[
和]
内部,使其成为一个对象数组?)
但一般来说:是的,for..in
(不是for each
,而是for
)用于循环对象属性的名称,一旦获得每个名称,就可以使用[]
符号检索属性值
因此,如果您可以获得对这些对象中每个对象的引用,则可以使用for..in
循环遍历属性
例如:
for each(var item in response) {
alert(item.caption)
}
这将表明
var obj, name;
obj = {
foo: "bar",
answer: 42
};
for (name in obj) {
console.log(name + ": " + obj[name]);
}
福:酒吧
答复:42
或
答复:42
福:酒吧
循环中属性名称的顺序没有为您示例中的泛型对象指定。(它是为Array
对象指定的:对于Array
对象,可以保证它们具有纯数字名称的任何属性(例如数组索引)将按数字顺序迭代。[即使如此,如果数组中也有非数字属性,那么这些属性是在数字属性之前、之后还是与数字属性混合在一起都是未定义的。]请尝试:
answer: 42
foo: bar
“'lastChangedName':null'Caption':”-两个实例中是否都缺少逗号?
对于每个(响应中的变量项){
是无效的JavaScript。请改用对于(响应中的变量项){
。
answer: 42
foo: bar
for(var item in response) {
alert(response[item].caption)
}