欢迎光临散文网 会员登陆 & 注册

碎片时间学编程「339]:验证数组是否包含在其他数组中

2023-06-08 12:07 作者:路条编程  | 我要投稿


无论顺序如何,检查第一个数组的元素是否包含在第二个数组中。 在从第一个数组创建的 Set 上使用 for...of 循环。 使用 Array.prototype.some() 方法检查第二个数组中是否包含所有不同的值。 使用 Array.prototype.filter() 方法比较两个数组中每个不同值的出现次数。 如果第一个数组中任何元素的计数大于第二个数组中的任何元素的计数,则返回 false,否则返回 true。

JavaScript

const isContainedIn = (a, b) => {

  for (const v of new Set(a)) {

    if (

      !b.some(e => e === v) ||

      a.filter(e => e === v).length > b.filter(e => e === v).length

    )

      return false;

  }

  return true;

};


示例:


isContainedIn([1, 4], [2, 4, 1]); // true

更多内容请访问我的网站:https://www.icoderoad.com


碎片时间学编程「339]:验证数组是否包含在其他数组中的评论 (共 条)

分享到微博请遵守国家法律