不要从JavaScript对象的值中呈现null

Гро*_*ный 9 html javascript jquery

我在寻找最有效的方式来输出empty string,而不是"null"null值.有没有办法在没有条件语句(即if或三元(? :)运算符)的情况下执行此操作.

代码示例如下:

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

item.PhoneNumber is null,页面呈现字符串" null "时SearchResults div,我想要为.

Esa*_*ija 21

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

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

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

意外,因为它既不直观又无证.


Dav*_*mas 8

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

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

但是,老实说,只需使用条件运算符,它就是它们的意图,并有助于在脚本的执行和输出中强制执行一定量的安全性.