2012-10-18 26 views
2

在下面的代码中,我得到了一个错误:Internet Explorer 9中无法获取属性错误的值

Unable to get value of the property 'deal_score_round_img': object is null or undefined

调试器报告为jdeals[i]['deal_score_round_img']值:

"<img src=\"assets/deal_scores/80.gif\" width=\"40\" height=\"35\" />"

错误发生在第一行(typeof)。

if(typeof(jdeals[i]['deal_score_round_img'])!="undefined") 
{ 
    var nums = jdeals[i]['deal_score_round_img'].match(/([[0-9]+)/ig); 
    t.deal_score = nums[0];//80 
} 

该脚本的目的是从图像字符串中提取“80”。

任何想法的人?

+0

哇,这是我第一次见过的typeof没有空间使用在它和它的操作数之间,我以为你试图在那里调用一个特殊类型的函数! – TheZ

+0

是的,人们说我应该多用空格! –

+0

这看起来不像我的建议,看起来像GrailsGuy的解决方案,或者你可以自己添加一个答案:) – TheZ

回答

1

似乎jdeals可以为空或未定义,如果该预期,你要检查它太:

if(typeof(jdeals[i])!="undefined" && 
    typeof(jdeals[i]['deal_score_round_img'])!="undefined") 
+1

谢谢!由于jdeals是一个数组我使用'if(typeof(jdeals)!=“undefined”)' –