javascript - 删除重复项但不删除空元素,并将重复元素存储在另一个数组中

标签 javascript python

我正在尝试将我在 python 中的代码复制到 Javascript 中,因为我是新手,而且我真的找不到任何关于我遇到的这个特定问题的引用。 所以,我有一个包含元素的数组,我想找到重复项,但跳过空白,但不过滤它们,因为在这种情况下,我拥有的计数器会中断并给我一个错误的值。 数组应该是原始形式,而不是排序的。 这是Python中的代码:

lis = ["", "5", "2", "", "2", ""]

not_dupl = []
dupl = []

for i in lis:
    print(i)
    if i not in not_dupl or i =='':
        not_dupl.append(i)
    else:
        dupl.append(i)
print(not_dupl)  # expected output ["", "5", "2", "", ""]
print(dupl)  # expected output ["2"]

我不确定 JavaScript 中是否存在一个函数“in”来检查字符串或数组的内部。

最佳答案

正如您正在寻找的评论中提到的包括:

const lis = ["", "5", "2", "", "2", ""];

const not_dupl = [], dupl = [];

for(const i of lis) {
  console.log(i);
  if(!not_dupl.includes(i) || i === '')
    not_dupl.push(i);
  else
    dupl.push(i);
}

console.log(not_dupl, dupl);

PS:对于非索引来说,i 是一个不好的名字,也是为什么 lis 而不仅仅是 list,为什么 not_dupl 而不是 nonDuplicates

关于javascript - 删除重复项但不删除空元素,并将重复元素存储在另一个数组中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54963317/

相关文章:

javascript - 删除高亮 JavaScript getSelection 函数

javascript - 如何在 UIWebView 中调整图像大小?

python - 如何在 pandas 中过滤(使用 loc)时应用数学函数

python - 将工具提示添加到 Bokeh DataTable

python - Pandas DataFrame 从列索引返回值

python - 如何使用 Selenium 自动化网页按钮控制?

javascript - Rails 内联 Javascript 和最佳实践

javascript - 根据字符串的特定排列对字符串数组进行排序

javascript - linux node.js 中的意外标识符 "let"

Python GTK +3 : Sorting a treeview by clicking on column