将空值替换为JSON OBJECT中的空值

嗨,我有一个由ajax请求提供的JSON对象。

json中的一些值显示为null ,但我想要一个empty String

我的代码示例:

 $.post("/profil_process/wall/preview-post.php",param, function (data){ // this does not work JSON.stringify(data, function(key, value) { return value === "" ? "" : value }); $('#previewWall').html(getPostWall(data.type,data.titre,data.url,data.description,data.media,data.photo_auteur,data.nom_auteur,data.url_auteur,data.date_publication)).fadeIn(); $(".bouton-vertM").show(); $("#wLoader").hide(); },'json'); 

有任何想法吗?

你的function应该是这样的:

 function (key, value) { return (value == null) ? "" : value } 

检查nullundefined值并返回一个空字符串

这是你应该怎么做,用空字符串替换对象值,而不是字符串化

 $.post("/profil_process/wall/preview-post.php",param, function (data){ (function removeNull(o) { for(var key in o) { if( null === o[key] ) o[key] = ''; if ( typeof o[key] === 'object' ) removeNull(o[key]); } })(data); $('#previewWall').html( getPostWall( data.type, data.titre,data.url, data.description, data.media, data.photo_auteur, data.nom_auteur, data.url_auteur, data.date_publication ) // ^^^ why not just pass the entire object ? ).fadeIn(); $(".bouton-vertM").show(); $("#wLoader").hide(); },'json'); 

如果可以在序列化字符串上用空字符串替换null-s,请执行以下操作:

 JSON.stringify(data).replace(/null/i, "\"\""); 

希望这有帮助

 var List = []; $.post("/profil_process/wall/preview-post.php",param, function (data){ jQuery.each(data, function (key, value) { List.push({ ReportId : value.ReportId, ReportType: CheckNullReturnBlank(value.ReportType), ReportName: CheckNullReturnBlank(value.ReportName), Description : CheckNullReturnBlank(value.Description) }) }); },'json'); function CheckNullReturnBlank(item) { return item = (item == null) ? '' : item; } 
 function returnblank(item){ if(item == null){ return ""; }else{ return item; } } 

您可以通过java脚本中的以下代码将空值替换为空

 var remove_empty = function ( target ) { Object.keys( target ).map( function ( key ) { if ( target[ key ] instanceof Object ) { if ( ! Object.keys( target[ key ] ).length && typeof target[ key ].getMonth !== 'function') { target[ key ] = ""; } else { remove_empty( target[ key ] ); } } else if ( target[ key ] === null ) { target[ key ] = ""; } } ); return target; }; 

您可以阅读有关Object.keys的更多信息