我正在对Yahoo Boss API运行ajax查询,以获取搜索结果中包含的关键字列表。
但是,我发现当数据包含keyterms的空值时(例如:“keyterms”:{}),我的脚本会中断,但不会触发错误处理程序 - >错误:function()
我发现当脚本中断时,alert(item ['keyterms'] ['terms'])返回undefined
我的代码如下,当keyterms为空时导致脚本中断的原因是什么?如何强制它正常处理这种情况?
success: function(data)
{
var keywords = new Array();
jQuery.each(data['ysearchresponse']['resultset_web'],
function(i,item)
{
jQuery.each(item['keyterms']['terms'],
function(i,kw)
{
key = kw.toLowerCase();
if (keywords[key] == undefined)keywords[key] = 1;
else keywords[key] = (keywords[key] + 1);
});
});
答案 0 :(得分:0)
这是我为处理异常所必须做的事情......
function(i,item)
{
if(item['keyterms']['terms']==undefined) item['keyterms']['terms'] = "" ;
jQuery.each(item['keyterms']['terms'],
// etc...