在我的例子中,搜索应该遍历嵌套数组的前[1]个元素.

function massivs() {
        let array = [['a', 'mango', 'b','c'], ['d', 'applemango', 'e','f'],['k', 'mangoapple', 's','r']];
        let comp = ['apple', 'mango'];
        let ans = [];
        
        for (let i = 0; i < array.length; i++) {        
            for (el of array[i]) {
                if (comp.every(y => el.includes(y))) {
                    ans.push(el);
                }
            }
        }
        console.log(ans);
}

massivs();
[ 'applemango', 'mangoapple' ]


Expected Result [['d', 'applemango', 'e','f'],['k', 'mangoapple', 's','r']]

推荐答案

for of迭代数组中的项,因此它只推送包含在搜索值中的数组元素,如果在搜索中找到,则推送整个数组并打破循环

 function massivs() {
            let array = [['a', 'mango', 'b','c'], ['d', 'applemango', 'e','f'],['k', 'mangoapple', 's','r']];
            let comp = ['apple', 'mango'];
            let ans = [];
            
            for (let i = 0; i < array.length; i++) {        
                for (el of array[i]) {
                    if (comp.every(y => el.includes(y))) {
                        ans.push(array[i]);
                        break;
                    }
                }
            }
            console.log(ans);
    }

    massivs();

Javascript相关问答推荐

二维数组,过滤并返回带有索引而不是值的新数组

调用SEARCH函数后,程序不会结束

Flisk和JS错误:未捕获的Syntax错误:意外的令牌'<'

积分计算和 colored颜色 判断错误

我的glb文件没有加载到我的three.js文件中

禁用从vue.js 2中的循环创建的表的最后td的按钮

嵌套异步JavaScript(微任务和macrotask队列)

TypeScript索引签名模板限制

为什么!逗号和空格不会作为输出返回,如果它在参数上?

如何从隐藏/显示中删除其中一个点击?

Next.js服务器端组件请求,如何发送我的cookie token?

Use Location位置成员在HashRouter内为空

为什么客户端没有收到来自服务器的响应消息?

将异步回调转换为异步生成器模式

如何在HTMX提示符中设置默认值?

每次重新呈现时调用useState initialValue函数

如何在和IF语句中使用||和&;&;?

将范围 Select 器添加到HighChart面积图

是否可以将异步调用与useState(UnctionName)一起使用

如果对象中的字段等于某个值,则从数组列表中删除对象