javascript - 检查一个数组是否包含另一个数组的任何元素并突出显示另一个数组中的元素 - React native
问题描述
我有一个显示为标签的元素数组。例如:
["apple","banana","pineapple","grape"]
显示为 ==> 苹果 香蕉 菠萝 葡萄
是我拥有的数组。
对于 TextInput onChangeText
,使用输入的文本启动去抖动套接字调用,处理后我将获得与传递的文本匹配的元素数组。
例如,我将从["apple","banana"]
websocket 响应中获取,它应该显示在标签中 as===>
apple banana pineapple grape
突出显示苹果和香蕉的地方。
如何实施?
--update--- 这就是我的数组的样子
var originalArray = [
{ id: 1, name: "apple" },
{ id: 2, name: "banana" },
{ id: 3, name: "pineapple" },
{ id: 4, name: "grape" },];
];
var receivedArray = [
{ id: 1, name: "apple" },
{ id: 2, name: "banana" },];
解决方案
您可能会发现接收到的元素出现在原始数组中的所有索引,然后处理找到的索引
var originalArray = ["apple","banana","pineapple","grape"];
var receivedArray = ["apple", "banana"];
var foundIndices = originalArray.map(el => receivedArray.includes(el) ? true : false)
// Highlight copy version of originalArray based on foundIndices
推荐阅读
- web-component - stenciljs:插槽问题
- mysql - 语句终止,因为数据将被截断
- jms - 我们可以让 JMS Producer 使用“AmazonSQSAsyncClient”的方法“sendMessageAsync”来发送消息吗?
- javascript - 如何在首次打开网站时要求用户输入日期,然后将日期保存为整个网站的全局值
- python - Python字典排序和打印
- java - 递归鞍背 - 在 Java 中搜索已排序的二维数组中的元素
- r - 如何计算 r 中的这个双积分?
- javascript - 在一行中将评估结果分配给变量的好方法是什么?
- javascript - 为什么在这种情况下使用循环?
- angular - 继续功能之前的角度等待数据