微信小程序多维数组筛选(以二维数组为例)
微信小程序多维数组筛选(以二维数组为例)
我们在遇到微信小程序进行筛选的时候,一般会使用到filter函数来进行筛选,但是有时候遇到多维数组怎么办呢?
//例如这是我们的数组
arr: [{id: 1,name: 'A',teachers: [{course: 'M',classes: 'J',}]},{id: 2,name: 'C',teachers: [{course: 'Z',classes: 'L',}]},{id: 3,name: 'E',teachers: [{course: 'B',classes: 'C',}]},],
可能我们会选择使用两次filter函数,可是我们就会发现,怎么筛选结果都是有问题的,所以这会我们就需要forEach函数了。
使用方法如下:
let newArray = []arr.forEach((now, index) => {newArray[index] = nownewArray[index].teachers = now.teachers.filter((item) => {return item.course === twoInput //twoInput你输入的内容进行匹配})})arr = arr.filter((item) => {return item.teachers != ''})
- 先用forEach遍历外部数据 ,得到单条数据;
- 再使用filter进行数据匹配 ,如果与你输入内容匹配就会筛选下来;如果没有的话就会被删除,成为一条空数据;
- 最后再使用filter把空的数据那条删掉 ,留下来的就是筛选后的数组。
掌握到这种方法了,其余的多维数组是一样的原理,我们先使用forEach遍历出外层数组,再进行匹配。
如果有问题,欢迎一起讨论,共同进步!初学微信小程序,有问题请指出,谢谢~
微信小程序多维数组筛选(以二维数组为例)相关推荐
- 微信小程序官方接口生成带参数二维码
最近在做一个点餐项目需要生成带参数的二维码供顾客扫码点餐,网上有用许多二维码生成器,比如"草料二维码生成器",但是我还是偏爱用微信小程序官方提供的接口来实现. 首先贴一个文档地址, ...
- 微信小程序:实现长按扫描二维码
小程序内置扫描二维码 image 使用小程序提供的image组件,image组件上有一个show-menu-by-longpress的属性,设置为true <image show-menu-by ...
- 微信小程序实现自定义单选功能(二维数组模式)
公司有这样的需求,因为每个学校的布局不一样所以字段不是固定的,后台可自定义添加任意组合,所以后端返回的是一个二维数组. list:[ {name: '建筑',id: 19,group_pid: 0,s ...
- 【微信小程序】接口生成自定义首页二维码
1.背景 在原有小程序上开发了一个新的功能,需要整合首页.但是为了不影响原有业务,且能测试新功能.所以需要新生成一个二维码,用户扫描该二维码可以跳转到新功能的页面. 2.方法 2.1生成二维码的接口: ...
- 微信小程序web-view 实现长按识别二维码
小程序长按识别二维码, 网页在小程序中长按识别二维码,web-view长按识别二维码 效果图: html 代码: <!DOCTYPE html> <html><head& ...
- 微信小程序如何支持长按识别二维码功能
1.previewImage 小程序wxml <image src="{{image}}" bindtap="imgLoad"></image ...
- 微信小程序 最全 生成带参数二维码
摸索了几天终于完成了,接口A B C 通用 ,接口B只能生成已发布的小程序 $appid='APPid'; $secret='你的小程序秘钥'; $tokenUrl="https://api ...
- 微信小程序学习之路——API获取二维码
获取二维码 通过后台接口可以获取小程序任意页面的二维码,扫描该二维码可以直接进入小程序对应的页面. 可以使用开发工具 1.02.1803130 及以后版本通过二维码编译功能调试所获得的二维码 为满足不 ...
- 获取其他人微信小程序的任意路径以及生成二维码
如果想要获取别人的小程序页面路径和参数,也不是没有办法,我们只需要通过小程序平台提供的工具就可以简单的获取得到. 当然,前提是获取到目标小程序的APPID,这个应该很简单,没必要在这里阐述. 第一步, ...
- 微信小程序:长按图片识别二维码
方法一:使用小程序提供的image组件,image组件上有一个show-menu-by-longpress的属性,设置为true,当image被长按时会弹出选择菜单 <image show-me ...
最新文章
- K3ERP连接数据库问题
- 阿里平头哥首款CPU芯片发布!5nm倚天710,128核单片600亿晶体管,无人能与争锋...
- java debug体系为什么不能debug到jdk里所有的代码
- 付费会员制,如何赋能产品?
- NYOJ练习题 删除元素(二分查找)
- Windows下启动,关闭Nginx命令
- evernote 替代_Evernote的5种开源替代品
- 【Flink】Flink CancellationException null DefaultExecutionGraphCache LeaderRetrievalHandler
- 使C#代码现代化——第四部分:类型
- 无声也能语音识别?微软这个黑科技有点厉害
- Python程序设计--第5章 函数设计与使用
- cmd 打开资源监视器
- 利用云计算来实现业务转型呢,有五个步骤可以遵循
- VLIW Microprocessor Hardware Design
- readyState的值的含义
- [应用推荐]FreeMind自动生成系统盘的树状图(思维导图)
- 【爬虫】Python爬虫经验分享--爬取码市招聘项目
- web扫描器之Nessus
- c语言100列作业,C语言经典例题100例——C语言练习实例72解答(链表)
- nginx报错找不到指定路径