服务器中存在javascript对象未定义错误,但本地主机中没有

服务器中存在javascript对象未定义错误,但本地主机中没有,javascript,Javascript,我的JSON对象: var projects = { "id_1": { "category": "Residential", "name": "Optima Upgrade", "area_id": "14916", "bedrooms": "1.5 BHK, 2 BHK, 2.5 BHK, 3 BHK" }, "id_4": { "category": "Residential", "name": "Opti

我的JSON对象:

var projects = {
  "id_1": {
    "category": "Residential",
    "name": "Optima Upgrade",
    "area_id": "14916",            
    "bedrooms": "1.5 BHK, 2 BHK, 2.5 BHK, 3 BHK"
  },
  "id_4": {
    "category": "Residential",
    "name": "Optima Ace",
    "area_id": "12508",
    "bedrooms": "1 BHK, 2 BHK"
  }
}
我的JavaScript代码:

var projectid = [ "1", "2", "3", "4", "5" ];

jQuery.each( projectid, function( i, val ) {
  id = 'id_'+val;
  if(projects[id]['category']==="Land")       
    // do stmt
  } else if(projects[id]['category']==="Residential") {
    // do stmt
  }
我在live server上遇到此错误:

TypeError: projects[id] is undefined

但本地主机上没有错误。

请提供服务器版本中发生的情况的完整示例。因为这个错误在问题的本质上是非常明显的。那么,您是否正在加载包含来自其他源的项目的文件?或者,当您运行另一部分时,它还没有加载?请提供更多详细信息。您确定项目有两个对象吗?首先检查其长度,并更改项目类型[id]!='undefined'&&projects[id]['category']===Land{这个错误是不是在循环迭代命中1或4以外的东西时产生的?在这种情况下,它找不到任何这样的元素,因此出现了错误。在问题@EWitso as updates问题中,你必须检查undefined,就像iftypeof projects[id]!='undefined'&&projects一样[id]['category']==Land{}与第二个条件相同