检查Javascript对象数组中是否存在对象值,如果没有向数组添加新对象

这篇具有很好参考价值的文章主要介绍了检查Javascript对象数组中是否存在对象值,如果没有向数组添加新对象。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

需求:

如果我有以下对象数组:

[ { id: 1, username: 'fred' }, { id: 2, username: 'bill' }, { id: 2, username: 'ted' } ]

有没有办法循环遍历数组,以检查特定的用户名值是否已经存在,如果它什么都不做,但是如果它没有用所述用户名(和新的ID)将新对象添加到数组?

解决

方法 一:

我假设id s在这里是独一无二的。 some是检查数组中事物存在的一个很好的函数:

const arr = [{ id: 1, username: 'fred' }, { id: 2, username: 'bill' }, { id: 3, username: 'ted' }];

function add(arr, name) {
  const { length } = arr;
  const id = length + 1;
  const found = arr.some(el => el.username === name);
  if (!found) arr.push({ id, username: name });
  return arr;
}

console.log(add(arr, 'ted'));

方法二:
这里我使用了带有.filter的ES6箭头功能来检查是否存在新添加的用户名。文章来源地址https://www.toymoban.com/news/detail-671546.html

var arr = [{
    id: 1,
    username: 'fred'
}, {
    id: 2,
    username: 'bill'
}, {
    id: 3,
    username: 'ted'
}];

function add(name) {
    var id = arr.length + 1;        
            if (arr.filter(item=> item.username == name).length == 0){
            arr.push({ id: id, username: name });
        }
}

add('ted');
console.log(arr);

到了这里,关于检查Javascript对象数组中是否存在对象值,如果没有向数组添加新对象的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • JavaScript判断数组对象是否含有某个值的方法(6种)

    JavaScript判断数组对象是否含有某个值的方法(6种)

    文章内容 文章链接 vue3 antd table表格的增删改查(一) input输入框根据搜索【后台管理系统纯前端filter过滤】 https://blog.csdn.net/XSL_HR/article/details/128072584?spm=1001.2014.3001.5501 vue3 antd table表格的增删改查(二) input输入框根据搜索【后台管理系统 请求后端接口 前后端

    2024年02月06日
    浏览(11)
  • Python检查文件是否存在,若不存在则创建

    Python检查文件是否存在,若不存在则创建 在Python中,我们经常需要操作文件。在处理文件时,有时候需要判断目录是否存在。如果目录不存在,则需要创建一个新的目录。本篇文章将介绍如何使用Python来检查目录是否存在,如果不存在则创建一个新的目录。 使用os.path.exist

    2024年02月07日
    浏览(9)
  • 如何检查 Docker 镜像是否存在漏洞

    如何检查 Docker 镜像是否存在漏洞

    今天我们来聊聊Docker镜像。 你可能听过Docker,但是你知道什么是Docker镜像吗? 如果你还不知道,别担心,今天我们用幽默的方式来解释一下 首先,Docker镜像就像一份披萨的食谱。你可以把它看作是一个包含了所有制作披萨所需的材料和步骤的清单。 类似地,Docker镜像包含了

    2023年04月24日
    浏览(5)
  • 检查 Bash 中是否存在输入参数

    当我们创建 Bash 脚本时,我们可能希望在我们的脚本中使用参数来成功运行。 因此,我们需要创建一个脚本来检查用户在脚本中使用的输入参数的数量。 当用户在使用脚本或命令时没有传递所需参数时,所有这些都可以防止意外行为,然后我们可以传递一条错误消息,告诉

    2024年02月08日
    浏览(6)
  • Hadoop中命令检查hdfs的文件是否存在

    在Hadoop中,可以使用以下命令检查HDFS文件是否存在: hadoop fs -test -e 其中,是要检查的HDFS文件的路径。 如果文件存在,命令返回0;如果文件不存在,命令返回非0值。 以下是一个示例: 示例中,使用hadoop fs -test -e命令检查/user/hadoop/myfile.txt文件是否存在。接着,通过检查命

    2024年02月14日
    浏览(30)
  • 如何在十亿级别用户中检查用户名是否存在?

    如何在十亿级别用户中检查用户名是否存在?

    不知道大家有没有留意过,在使用一些app注册的时候,提示你用户名已经被占用了,需要更换一个,这是如何实现的呢?你可能想这不是很简单吗,去数据库里查一下有没有不就行了吗,那么假如用户数量很多,达到数亿级别呢,这又该如何是好? 数据库方案 第一种方案就

    2024年02月08日
    浏览(8)
  • 【教3妹学编程-算法题】检查按位或是否存在尾随零

    【教3妹学编程-算法题】检查按位或是否存在尾随零

    3妹 :呜呜,烦死了, 脸上长了一个痘 2哥 : 不要在意这些细节嘛,不用管它,过两天自然不就好了。 3妹 :切,你不懂,影响这两天的心情哇。 2哥 : 我看你是不急着找工作了啊, 工作那么辛苦,哪还有时间想这些啊。 3妹 :说到找工作,我又要去刷题了。 2哥 :我给你出

    2024年01月20日
    浏览(7)
  • R语言【cli】——ansi_nzchar():检查是否存在ANSI语句

    Package  cli  version 3.6.0 参数【x】 :Charcater向量。其他对象使用base::as.character()进行转换。 参数【...】 :传入base::nzchar()。

    2024年01月21日
    浏览(9)
  • 【100个 Unity实用技能】☀️ | C# 检查字典中是否存在某个Key的几种方法

    【100个 Unity实用技能】☀️ | C# 检查字典中是否存在某个Key的几种方法

    老规矩,先介绍一下 Unity 的科普小知识: Unity 是 实时3D互动内容创作和运营平台 。 包括 游戏开发 、 美术 、 建筑 、 汽车设计 、 影视 在内的所有创作者,借助 Unity 将创意变成现实。 Unity 平台提供一整套完善的软件解决方案,可用于创作、运营和变现任何实时互动的2D和

    2023年04月08日
    浏览(8)
  • R语言【cli】——ansi_has_any():检查字符串里是否存在ANSI格式

    Package  cli  version 3.6.0 参数【string】 :要检查的字符串。它也可以是字符向量 参数【sgr】 :是否查找SGR(样式化)控制序列。 参数【csi】 :是否查找非sgr控制序列。 参数【link】 :是否查找ANSI超链接。 逻辑向量,对于具有某种ANSI样式的字符串为TRUE。

    2024年01月20日
    浏览(10)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包