使用Array.indexOf从数组中删除空值?

Mad*_*re 2 javascript arrays null node.js

我试图找到我的数组中是否有空值而不使用for循环,主要类似于Array.indexOf.Undefined不是一个字符串,它是一个null值,当我使用console.log(ARRPREFIX)时,它是未定义的

var arr = ["**", undefined, null];
if (arr.indexOf(null) > -1) {
  console.log("Should be null");
  arr.splice(arr.indexOf(null), 1);
}
Run Code Online (Sandbox Code Playgroud)

上面是我的代码,但它没有检测到未定义的值,我也尝试输入"undefined"而不是这样.

Alb*_*res 7

您可以filter用来过滤掉虚假值(null,undefined等):

var array = [2, 3, null, 4, undefined, 5];
array = array.filter(Boolean);

console.log(array);
Run Code Online (Sandbox Code Playgroud)