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

标签 javascript arrays node.js null

我试图在不使用 for 循环的情况下查找我的数组中是否存在空值,主要类似于 Array.indexOf。 Undefined 不是字符串,它是一个 null 值,当我使用 console.log(ARRPREFIX) 时显示为 undefined

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

上面是我的代码,但是它没有检测到未定义的值,我也尝试输入“undefined”来代替,但这不起作用。

最佳答案

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

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

console.log(array);

关于javascript - 使用 Array.indexOf 从数组中删除空值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45010672/

相关文章:

JavaScript 无法将图像插入 HTML

JavaScript for 数组的循环语法

javascript - 使用jquery ajax调用nodejs获取json数据

javascript - 根据所选单选按钮的组合显示/隐藏 div

javascript - 如何将当前表行和 JavaScript 提示值传递给 PHP/MySQL?

javascript - 总结许多连续 if(x typeof != ='unedfined' ) 查询的最佳方法?

php - 使用正则表达式的深度(无限)嵌套拆分词

C++ Ifstream 转换为类对象数组

node.js - 无法在azure应用程序服务中使用 getArchiveLink() 方法获取存档链接

javascript - 如何从 node_modules 导入 JS 库