indexOf返回-1,为什么?
indexOf returns -1, why?
我正试图将一些XML转换成JSON模块xml2js
,我刚刚开始
request.execute('[someSP].[spSomeSP]', function(err, dataset) {
_.forEach(dataset, function(items) {
_.forEach(items, function(item) {
console.log('>>>>', item);
});
});
其中console.log('>>>>', item);
返回:
{ 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_CANCEL: null }
正如你在上面看到的,有一些道具从XX
开始,每一个从XX
开始的道具都有一个XML
属性,我所需要的就是将每个XML属性转换成JSON,但是当我做item.indexOf('XX')
时,我得到的都是-1
所以,我应该怎么做,以采取每一个道具开始与XX
为了将其转换为JSON ?
item
是一个对象。你可以将其转换为JSON,然后检查XX
:
var json = JSON.stringify(item);
console.log(json.indexOf('XX')); // 49
或者,更好的方法是遍历对象的每个属性:
for(var key in item) {
if(key.indexOf('XX') === 0) {
console.log(key);
console.log(item[key]);
}
// Or you can also check the value here...
// item[key].indexOf('XX')
}
相关文章:
- 为什么返回'原因'来自被拒绝的jQueryAJAX调用theable
- 为什么返回文档.getElementsByClassName正在工作,而getElementbyId不在Watir中
- 为什么返回此结果会导致对象
- 为什么返回 false 不适用于 AddEventListener,以及 Javascript 对 preventDef
- 为什么返回的 Promise 在登录到控制台时没有方法
- 为什么返回在getJSON中不起作用,为什么我不能从getJSON写入变量
- 为什么返回 false 会停止使用 jQuery 传播,而使用 POJS 则不会
- 为什么“1”--“1”返回2
- 为什么返回错误不会阻止我的表单提交
- 为什么返回 document.getElementById 不起作用
- 为什么返回未定义
- 为什么返回调试器在javascript中失败
- 以下Javascript语句返回什么以及为什么返回
- 为什么[]+[]返回一个空字符串
- 当属性src为null或为空时,.prp('src')为什么返回错误的值
- 为什么返回0
- JS:为什么(![]+[])[+[]]返回"f"
- 为什么返回这个ECMAScript Harmony箭头函数表达式会产生意想不到的行为?
- 为什么x &&返回的无效
- 为什么返回对象的 JavaScript 函数通过引用(对其参数)来执行此操作