jQuery.ajax空结果集foobars我的函数

时间:2010-11-11 22:38:16

标签: jquery ajax

我正在对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);
                                });
                    });

1 个答案:

答案 0 :(得分:0)

这是我为处理异常所必须做的事情......

function(i,item)
{
 if(item['keyterms']['terms']==undefined) item['keyterms']['terms'] = "" ;
 jQuery.each(item['keyterms']['terms'],
 // etc...