首页 > 其他分享 >JS对象数组使用IndexOf方法得到索引

JS对象数组使用IndexOf方法得到索引

时间:2022-09-29 08:33:22浏览次数:83  
标签:IndexOf myArray hello 索引 数组 var JS stevie

获得数组里某一个对象的索引的最佳方法是什么呢?
比如如下场景:

var hello = {
    hello: 'world',
    foo: 'bar'
};
var qaz = {
    hello: 'stevie',
    foo: 'baz'
}

var myArray = [];
myArray.push(hello,qaz);

现在我想得到hello属性值是stevie的对象的索引。在这个例子里,它是1。

使用map函数,一行帮你搞定
var index = myArray.map(function(e) { return e.hello; }).indexOf('stevie');
旁白:这行代码虽然简洁漂亮,而且真的使用到了indexOf函数,但是对于大数组,特别是频繁更新的大数组,那效率也忒低了点。于是有人提出findIndex才是更好的选择
var index = myArray.map(x => x.hello).indexOf('stevie')
or
var index = myArray.findIndex(x => x.hello === 'stevie')

转自知乎

标签:IndexOf,myArray,hello,索引,数组,var,JS,stevie
From: https://www.cnblogs.com/strongerPian/p/16740177.html

相关文章

  • highlight.js代码高亮脚本的基本用法
    一、准备highlight.js官网下载界面中文文档点击Getversion进行下载勾选语言进行下载下载好的文件结构二、引入highlight的CSS样式和js文件引......
  • Js手写面试题5-Promise
    Promise❓有任何疑问都可以私信我解答⚡仓库地址:https://gitee.com/super_li_yu/promise......
  • JS中面向对象编程(OOP)的基本原理——this关键字、原型链、构造函数、继承
    面向对象编程(ObjectOrientedProgramming),是软件开发过程的主要方法之一。在OOP中,使用对象和类组织代码来描述事物及其功能。虽然点符号是访问对象属性的有效方法(如myobj.......
  • js判断数组的几种方法
    1.实例的__proto__属性非标准ie浏览器不支持letarr=[1,2,3];console.log('__proto__',arr.__proto__===Array.prototype)2.实例的constructorletarr=[1,2,3];......
  • JS实现数组元素位置交换
    /***数组元素交换位置*@param{array}arr数组*@param{number}index1添加项目的位置*@param{number}index2删除项目的位置*index1和index2分别是两......
  • JSON 转复杂对象
    publicstaticObjectcopyProperties(JSONObjectoriObj,ObjectdesObj){//1.首先要拿到oriObj对象的所有存在值不为空的键-值,放入到集合当中Cla......
  • 自定义toString()方法检测对象类型时的返回值[object x](JS)
    如果想通过 Object.prototype.toString()方法来检测对象类型,则需要以 Function.prototype.call() 或者 Function.prototype.apply() 的形式来调用toString()方法。......
  • MYSQL中的json数据操作
    1.2基础查询操作用法提示:如果json字符串不是数组,则直接使用$.字段名如果json字符串是数组[Array],则直接使用$[对应元素的索引id]1.2.1一般json查询使用 json字段......
  • vite.config.js配置入门详解
    一,搭建vite项目兼容性注意:Vite需要 Node.js 版本14.18+,16+。然而,有些模板需要依赖更高的Node版本才能正常运行,当你的包管理器发出警告时,请注意升级你的Node版......
  • docker配置阿里云加速器(修改daemon.json后缀为conf)
    问题:docker无法拉取镜像,根据网上教程添加 /etc/docker/daemon.json后仍然失败。解决方法:将daemon.json文件名改为daemon.conf 后成功解决问题。网上常见配置方......