javascript - ""in line.map(function(){return $(this).val();}).get()

标签 javascript arrays

我正在检查这样的元素数组中是否有任何“”值

"" in line.map(function(){return $(this).val();}).get()

它返回 false,但是当我在浏览器上调试它时,我在数组上得到了这个

line.map(function(){return $(this).val();}).get() = ["1", "2", "4", "", "", "", "", "", "3"]

我想这应该返回true,对吧?

我已经尝试过 .each 但我无法返回它,除非我使用带有 return false;

的全局变量

最佳答案

The in operator不检查数组是否包含值(即 indexOfincludes ),它枚举对象的属性。例如:

const data = ['a', 'b', 'c', 'd', 'e', 'f'];

for (f in data) {
  console.log('gets the index:', f);
  console.log('gets the value:', data[f]); // <- note the access using f
}

相反,您应该使用 find如果您需要元素或 some如果您只需要检查是否存在:

const data = ['a', 'b', 'c', 'd', 'e', 'f'];

console.log('find an element by value:', data.find(it => it === 'c'));
console.log('check if any elements match:', data.some(it => it === 'c'));

关于javascript - ""in line.map(function(){return $(this).val();}).get(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40137308/

相关文章:

javascript - AngularJS 待办事项列表应用程序 - 在页面刷新时保持列表

arrays - Ruby 数组数组转换为哈希数组

arrays - 如何快速获取Dictionary中特定对象的索引

c - 在 C 中减去任意大整数

javascript - axios删除调用返回405,我尝试使用id删除节点,但它没有删除

javascript - 选中复选框时向 JavaScript 变量添加值

javascript - 如何在 Meteor/JavaScript 客户端中运行解锁后台任务?

javascript - 使用 javascript 更改 DOM 元素的多个属性

java - ZipEntry 到字节数组

c++ - 将指向数组的指针传递给函数时出现段错误 (C++)