如果属性从XX开始,则从XML到JSON
我有这个function
request.execute('[someSP].[spSomeSP]', function(err, dataset) { _.map(dataset, function(items) { console.log(items); }); });
_.map(...)
返回的地方:
{ BET: 57635034, CUSTOMER: 181645, SPORT: 'NFL', 'XX_FILL OPEN': '<element>\r\n\t<element_type>wager_action_button</element_type>\t\r\n\t<element_name>Fill Open</element_name>\r\n\t<element_call>fillOpen(57635034)</element_call>\r\n\t<element_content></element_content>\r\n</element>', XX_VIEW: '<element>\r\n\t<element_type>betslip_selection_checkbox</element_type>\t\r\n\t<element_name></element_name>\r\n\t<element_call>addRemoveSelectionFromSlip_checkbox(1738756,0,1,1)</element_call>\r\n\t<element_content>0</element_content>\r\n</element>'}
正如你所看到的,以XX_
开头的属性具有XML属性,我想将这些XML转换成JSON。
我试过这样的东西,但它logging-1
,我不知道为什么。
_.map(dataset, function(items) { console.log(items.indexOf('XX')); });
我需要用xml2js = parseString = require('xml2js').parseString
你有什么build议?
您的indexOf
被称为对象(数组)。 你需要的是对你的项目中的每个属性名称进行调用:
_.map(dataset, function(items) { for (var item in items) { if (items.hasOwnProperty(item) && item.indexOf('XX') === 0) console.log(item, items[item]); } });