javascript - 在javascript中从数组中删除空字符串

标签 javascript arrays string

我需要帮助了解我的代码中发生的情况。我计划编写一个函数,它接受一个字符串并删除所有字母。输入将是字母和数字的组合。我希望这个函数返回字符串中找到的所有数字的数组。我已经成功写了一些东西(在 stackoverflow 的帮助下):

number = "32321FDFDS 44"
arr = number.replace(/[A-Za-z]/g," ").split(" ")



for(var i = arr.length - 1; i >= 0; i--){
     if(arr[i] == "") {
          arr.splice(i, 1);
    }
}

这会返回

[ '32321', '44' ]

目前来说这是完美的。我的问题是我不明白 arr.splice(i,1) 如何删除空字符串。删除 arr 中的空字符串是没有意义的。有人可以帮我理解这一点吗?

最佳答案

测试:

if (arr[n] == "") // if item `n` within `arr` array `==` `""` , do stuff

参见Array.prototype.splice()

数组中有两个项目:

var arr = ["123", ""];
if (arr[0] == "") {
  arr.splice(0,1);
} else {
  console.log(arr); // ["123", ""];
};
if (arr[1] == "") {
  arr.splice(1,1);
  console.log(arr); // ["123"]
};

关于javascript - 在javascript中从数组中删除空字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26091271/

相关文章:

java - 表达式的类型必须是数组类型,但它解析为字符串

javascript - MDN Function.prototype.bind 绑定(bind)函数调用为构造函数

javascript - zend 是什么? JavaScript 中的意思是

c - 将char [128]数组写入C中的文件

c - 重置 char *array[size] 内容

ios - 如何将 Firebase 数据保存到数组中

java - Java中的字符串ID是什么意思?

javascript - 如何使用外部 ".js"文件

javascript - d3v4 on Change事件实时绑定(bind)数据

c++ - C/C++ 中的指针和数组