Don't从JavaScript对象呈现null's值

Don't render null from JavaScript object's value

本文关键字:null JavaScript Don 对象      更新时间:2023-09-26

我正在寻找最有效的方法来为null值输出empty string而不是"null"。有没有一种方法可以在不使用条件语句(即if或三元(? :)运算符)的情况下执行

代码示例如下:

$.each(data, function(index, item) {
  return $("div#SearchResults").append(item.PhoneNumber);
}

item.PhoneNumber is null时,页面在SearchResults div内呈现为字符串"null",而我希望为空

$.each(data, function(index, item) {
  return $("div#SearchResults").append(item.PhoneNumber || "");
}

使用$.trim(意外地将nullundefined转换为空字符串):

$.each(data, function(index, item) {
  return $("div#SearchResults").append($.trim(item.PhoneNumber));
}

出乎意料,因为它既不直观又没有记录。

如果您真的决定不使用if或三进制来评估变量,那么就有可能使用||运算符:

$.each(data, function(index, item) {
  return $("div#SearchResults").append(item.PhoneNumber || '');
}

但是,老实说,只需使用一个条件运算符,这就是它们的作用,并有助于在脚本的执行和输出中加强一定的安全性。

试试这个,

$.each(data, function(index, item) {
  return $("div#SearchResults").append(item.PhoneNumber?item.PhoneNumber:"");
}

没有JQuery:

$.each(data, function(index, item) {
  return $("div#SearchResults").append([item.PhoneNumber].join(''));
}