首页 > 其他分享 >JS判断数组中是否存在某个值或者某个对象的值

JS判断数组中是否存在某个值或者某个对象的值

时间:2022-08-17 16:46:09浏览次数:69  
标签:console log JS expected 数组 output 某个 const id

、判断是否存在某个值
1、Array.prototype.indexOf()
indexOf()方法返回在数组中可以找到一个给定元素的第一个索引,如果不存在,则返回-1。

const beasts = ['ant', 'bison', 'camel', 'duck', 'bison'];

console.log(beasts.indexOf('bison'));
// expected output: 1

// start from index 2
console.log(beasts.indexOf('bison', 2));
// expected output: 4

console.log(beasts.indexOf('giraffe'));
// expected output: -1
2、Array.prototype.includes()
includes() 方法用来判断一个数组是否包含一个指定的值,根据情况,如果包含则返回 true,否则返回 false。

const array1 = [1, 2, 3];

console.log(array1.includes(2));
// expected output: true

const pets = ['cat', 'dog', 'bat'];

console.log(pets.includes('cat'));
// expected output: true

console.log(pets.includes('at'));
// expected output: false
3、Array.prototype.find()
find() 方法返回数组中满足提供的测试函数的第一个元素的值。否则返回 undefined。

const array1 = [5, 12, 8, 130, 44];

const found = array1.find(element => element > 10);

console.log(found);
// expected output: 12
4、Array.prototype.findIndex()

findIndex()方法返回数组中满足提供的测试函数的第一个元素的索引。若没有找到对应元素则返回-1。

const array1 = [5, 12, 8, 130, 44];

const isLargeNumber = (element) => element > 13;

console.log(array1.findIndex(isLargeNumber));
// expected output: 3
二、判断是否存在对象的某个值
1、Array.prototype.find() 同上3
const arr = [{id:1, name:'name1'}, {id:2, name:'name2'}, {id:3, name:'name3'}];

const res = arr.find((ev) => {
return ev.id === 3;
});
console.log(res);
// expected output: { id: 3, name: "name3" }

const ret = arr.find((ev) => {
return ev.id === 4;
});
console.log(ret);
// expected output: undefined
2、Array.prototype.findIndex() 同上4
const arr = [{id:1, name:'name1'}, {id:2, name:'name2'}, {id:3, name:'name3'}];

const res = arr.findIndex((ev) => {
return ev.id === 3;
});
console.log(res);
// expected output: 2

const ret = arr.findIndex((ev) => {
return ev.id === 4;
});
console.log(ret);

————————————————
版权声明:本文为CSDN博主「deardanyang」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_34707272/article/details/121919043

标签:console,log,JS,expected,数组,output,某个,const,id
From: https://www.cnblogs.com/Sara1987/p/16595753.html

相关文章

  • Nodejs 多进程与多线程
    为什么要使用多进程多进程与多线程介绍Nodejs多进程和多线程使用与区别cluster为什么需要多进程nodejs单线程,在处理http请求的时候一个错误都会导致进程退出,这是灾......
  • 记录:excel导入导出js-xlsx,处理合并
    效果前情提要后端传excel坐标数据,前端自己处理模板,找资料后,选择直接载入xlsx方式。准备工作npmixlsximport*asXLSXfrom'xlsx'导入提取数据letreader......
  • C 语言-3 数组
    3数组具有相同类型的若干变量按有序的形式组织起来。这些按序排列的同类数据元素的集合称为数组在C语言中,数组属于构造数据类型。一个数组可以分解为多个数组元素,这些数......
  • [JSOI2007] 字串加密
    题链:luoguJS同学?Description让JS同学对环形字符串进行重组加密。加密规则是:列出\(n\)个字符串并字典序升序,一次取末尾字符作为加密后的长度为\(n\)的密码串。......
  • 原生get请求读取本地json文件,electron vue
    1readLocalFile(fileUrl){2letxhr=null3if(window.XMLHttpRequest){4xhr=newXMLHttpRequest()5}else{6/......
  • JSP内置对象、MVC开发模式
    JSP内置对象内置对象:在jsp页面中不需要创建,直接使用对象变量名  真实类型  作用*pagecontext......
  • JSP指令导入标签库、JSP指令导入注释
    JSP指令导入标签库includ:页面包含的,导入页面的资源文件ttavlib:导入资源  JSP指令导入注释1,html注释:<!---->:只能注释html代码片段2,......
  • js - 文件名
    js-文件名修改文件名notice只修改文件名称保留文件格式后缀获取文件名称和格式后缀优化版/***@methodgetFileNameandExt*@description获取文件名称和格......
  • 两个jsp之间传递参数
    以下为请求端,用form表单默认传递  接收端用request.getParameter("name")来接收 ......
  • node.js安装过程中遇到的坑
    node.js的安装noide.js的完全卸载node.js的安装一些报错的解决1.node.js的完全卸载第一步:打开系统自带的应用管理器卸载ndoe.js。第二步:删除和node.js相关......