JavaScript 检查数组中是否存在重复输入以及至少一个字母

标签 javascript

当我点击一个按钮时,我想创建一个条目。该条目有标题和文本。在创建新条目之前,应该检查该标题是否已存在以及该标题是否为空。检查是否为空很重要,因为文本可能不是“”(空格),它至少应该有一个数字/字母或数字。

这就是我到目前为止得到的:

   var entries = store.getEntries(); // the entry list. Each entry has the property "title"

    function checkTitleInput(inputText) { // check the titleInput before creating a new entry

      if (inputText.length > 0 && // field is empty?
        /* at least 1 letter */ && // not just a whitespace in it?
        /* no duplicate */ // no duplicate in the entry list?
      )
        return true;

      return false;
    }

有人可以帮我吗?

最佳答案

使用Array#sometrim :

function checkTitleInput (inputText) {
  var trimmed = inputText.trim();
  var exists = entries.some((entry) => entry.title === trimmed);
  return trimmed.length > 0 && !exists;
}

你可以让它更短:

function checkTitleInput (inputText) {
  var trimmed = inputText.trim();
  return !!trimmed && !entries.some((entry) => entry.title === trimmed);
}

关于JavaScript 检查数组中是否存在重复输入以及至少一个字母,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44588989/

相关文章:

javascript - 使用 nock 模拟具有特定请求 header 的 mocha 中的 super 代理请求

javascript - height 属性导致脚本停止

javascript - 使用 kafka-node 创建的消费者和生产者无法连接到 kafka 的工作实例

javascript - 为什么在 if 条件下需要这个额外的检查?

javascript - 滚动指令在 Angular JS 中不起作用

javascript - 数组过滤器方法不返回 trim 值

javascript - 为什么我的 jQuery 代码不能运行?

javascript - 用引号替换双引号

javascript - 如何将部分模板加载到grails中的div中

javascript - 使用Immutable js,有没有更好的方法来更新不可变对象(immutable对象)中这个数组的值?