这是一个众所周知的难题,当我们includes()
在嵌套数组(即多维数组)内部使用时,它不起作用,存在一个Array.prototype.flat()函数,该函数将数组展平,然后进行搜索,但是它对浏览器的支持不是很好还好
因此,我们的工作是创建一个includesMultiDimension()
函数,该函数接受一个数组和一个字符串,并根据数组中该字符串的存在/不存在返回一个布尔值。
有许多解决此问题的解决方案,其中大多数包括递归,重数组函数,循环以及其他。
到目前为止,我们将要讨论的是检查嵌套数组中字符串是否存在的最简单方法。
该代码是-
const names = ['Ram', 'Shyam', 'Laxman', [ 'Jay', 'Jessica', [ 'Vikram' ] ]]; const includesMultiDimension = (arr, str) => JSON.stringify(arr).includes(str); console.log(includesMultiDimension(names, 'Vikram'));
这一行解决方案包括将数组转换为JSON字符串,以便我们可以简单地将include应用于它。
输出结果
控制台输出将是-
True
问题内容: 我对ES还是相当陌生,并正在将其用于我的新项目。首先,我为客户提供了一个简单的映射,其中包含名字和姓氏以及付款信息对象列表。如果我在SQL中执行此操作,那将类似于客户表和具有1:许多关系的付款信息表。 这是我要执行的操作的一个简单示例:https : //gist.github.com/anonymous/6109593 我希望根据payInfos嵌套数组中的任何匹配项找到任何客户,即
我正在进行一项编码挑战,获取一个由子数组组成的给定数组,在每个子数组中搜索最大的数字,最后返回一个只包含最大数字的新数组。我的思路是从每个子数组中创建变量,编写一个for循环来比较数组中的每个值,然后将最大值推送到一个新数组中。在编写了我的第一个for循环之后,我测试了我的代码,发现我得到了一个意想不到的结果,整个第一个子数组被压入了我的新数组。在我写下三个循环之前,我在寻找错误。谢谢你。编辑:这
我有一些数组,如果它们包含类似的值,我想返回这些数组的名称。 我有我的变量,它有多个数组,名字要么是,要么是,要么是。包含的只是变量中某些数组中相同的值。我需要返回数组中包含、和的数组的名称。因此,对于这个示例,我需要返回:。 通过这个函数抛出它们时,我得到一个错误。如何获取返回的数组?
如何获得空数组和美国的结果和
我正在努力实现以下转变。然而,我的解决方案在最终数组中添加了不需要的空值。 转换需要为所有元素在array中移位名称。我创建了3个案例来说明这个问题。 编辑:< code >根数组将始终至少有1个元素。 当前的JOLT规范工作正常,除了是空数组的情况。它生成值,我试图指定一个空字符串(或任何硬编码的字符串值,如)
问题内容: 我正在寻找给定此数组的函数, 我想寻找针头 “面包” 并得到以下结果 问题答案: 使用。您可以提供一个回调,该回调确定哪些元素保留在数组中以及哪些元素应删除。(从回调返回的值指示应删除给定的元素。)类似这样的东西: 欲获得更多信息: 返回值