Null中的Json值很热门以捕获Javascript异常

时间:2019-05-23 01:49:48

标签: javascript jquery json

我从action-struts 2获得数据json抛出ajax的视图。一些数据集的数据。

示例

{"home":"1234","room": null}.

我可以读取data.home,并且得到1234的值,但是当我尝试读取data.room时,在浏览器的控制台中出现了Uncaught错误,我该如何管理该Uncaught错误...

3 个答案:

答案 0 :(得分:3)

只需添加测试

/* ------
var
  data = {"home":"1234","room": null},
  h    = (data.home) ? data.home : '',
  r    = (data.room) ? data.room : 0;
------ */
var
  data = {"home":"1234","room": null},
  h    = data.home || '',
  r    = data.room || 0;
  
console.log('h=',h);
console.log('r=',r);

答案 1 :(得分:1)

通过这种方式,您可以处理对象中的空值,也可以将它们替换为空字符串,或者在浏览器中以这种方式将任何您希望不会遇到异常的值替换。请参见JSON.parse

let obj={"home":"1234","room": null};
let newobj=JSON.parse(JSON.stringify(obj),(key,value)=> value===null? "" : value )    
console.log(newobj)

答案 2 :(得分:0)

在尝试访问值之前尝试对数据进行清理,如下所示:

...some ajax resulting in 'data'
// replace null's for empty strings ""
JSON.stringify(data).replace(/null/i, "\"\"");

这样,您将获得一个空字符串而不是null(如果您要这样做)