.includes() 算法和速度?

2023-12-21

我有兴趣知道 .includes() 方法使用什么算法?它是否使用像 rabin karp 这样的模块化哈希?

在不了解更多有关其方法和速度的情况下,我对使用 .includes() 有点犹豫。我发现的文档在讨论它时没有详细说明(例如https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/String/includes https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/String/includes)


鉴于不同的引擎可以以不同的方式实现 .includes,因此可能很难对实现做出笼统的声明。然而,应该可以通过进行一些基准测试来了解它的速度(因为测试可能是确定的唯一方法)。

使用节点 7.0 我尝试测试三个不同的功能:
1.includes(),传入一个顺序数组
2. 一个基本的for循环,传入一个顺序数组
3. has(),从顺序数组中传入预先创建的集合

我获得的结果表明数组本身的长度似乎并不重要(如希望的那样),但所需的数字距离开始有多远却很重要。对于查找索引

诚然,这些测试在某种程度上是有限的,许多因素可能会影响它们。一个有趣的结果是,如果从传入的数组(而不是其他数组)创建一个集合,即使该集合没有传递到函数中,它似乎也会提高包含的速度,并降低包含的速度for循环函数略。我认为某种类型的缓存在某种程度上有利于 .includes() ?

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

.includes() 算法和速度? 的相关文章

随机推荐

  • 如何在Java中将getRGB(x,y)整数像素转换为Color(r,g,b,a)?

    我有从中获得的整数像素getRGB x y 但我不知道如何将其转换为 RGBA 格式 例如 16726016应该Color 0 200 0 255 有小费吗 如果我猜对了 你得到的是一个无符号整数的形式0xAARRGGBB so int b
  • JNI - java ArrayList 转换为 c++ std::string*

    我正在尝试使用 C 中的 JNI 进行数据转换 我在工作中遇到了麻烦java s 数组列表 of strings 因为我无法将这样的数据转换为c vector or 标准 字符串 我想知道如果可能的话 如何在不牺牲太多性能的情况下进行这种转
  • 打开本地html页面-java

    在我的 java 控制台应用程序之一中 我正在动态创建 html 页面 现在我想使用默认的网络浏览器打开它 所以你们能帮我解决这个问题吗 Swing java awt Desktop getDesktop browse uri SWT Pr
  • 如何使用C++ Expects 运算符?

    我正在使用 C 启动一个项目 除了少数学校项目之外 我之前从未使用过 C 远远超出了我现在正在处理的范围 我的目标是尽力遵循C 核心指南 https isocpp github io CppCoreGuidelines CppCoreGui
  • 嵌套资源的 Link_to 路由问题

    我有两个模型 作业 和 问题 一份工作有很多问题 而问题又属于一份工作 我已经在模型中设置了资源以及路线 我在尝试 link to questions index 页面上问题控制器的 Show 方法时遇到问题 我的 rake 路线说路径应该
  • selenium 获取元素类和文本

    我无法从以下 html 页面找到 test1 test2 dd class class subclass test1 test2 test3 dd 尝试过 dd contains class class subclass and conta
  • ASP.NET MVC 中的 Google API 图表

    我正在使用 google api 创建一个简单图表 AllowAnonymous public JsonResult PieChart return Json State Total GA 50 AL 30 JsonRequestBehav
  • 类构造函数默认为 void 吗?

    我一直在阅读 C 中的类构造函数 示例显示重载类构造函数 而且他们所有人都没有void关键字并且它们都没有返回值 e g public Class myClass public myClass public myClass int id o
  • Apache Camel AMQP - ActiveMQ AMQP 标头不匹配值 1,期望 0

    我正在尝试创建一个通过 AMQP 与 ActiveMQ 集成的 Apache Camel 应用程序 我一直在按照提供的 骆驼示例 spring jms 项目 它通过标准 TCP 连接 但我已修改为使用我的独立 ActiveMQ 5 8 安装
  • 将 Google Cloud Build 连接到 Google Cloud SQL

    Google Cloud Run 允许使用 Cloud SQL 但是 如果您在 Google Cloud Build 中构建容器时需要 Cloud SQL 该怎么办 那可能吗 背景 我有一个 Next js 项目 它在 Google Clo
  • 对象具有与成员函数不兼容的类型限定符

    我的课Game有一个会员EntityManager entityManager 班上EntityManager有一个私人成员Player player 和公共 getter 函数Player EntityManager getPlayer
  • 减少模板匹配的失误(使用透明模板)

    我正在尝试确定拼图图像上拼图块的位置 我有 拼图的图像 透明 png 拼图板的图像 正确位置周围有白色轮廓 首先 我提取图像 1 上的轮廓 并用它来绘制我的最终模板 然后我将最终模板与拼图板匹配并保存一些结果图像 这是我得到的结果的一些示例
  • 修改常量对象

    我正在查看初级 C 开发人员职位的面试问题 问题是 引用 是下面的代码correct struct Foo int i void foo void const Foo pointer const cast
  • elasticsearch监听多个ip

    是否可以监听多个主机地址 以便我可以监听本地主机请求和私有 IP 请求 就像是 network host 127 0 0 1 192 168 1 4 事实上是的 使用 JSON 表示法 这是我在配置中使用的 network bind hos
  • 使用 NSPopUpButtonCell 时在 NSTableView 中获取重复的标题按钮单元格

    我有一个动态 NSTableView 它可以根据提供的数据添加许多列 对于每一列 我将标题单元格设置为 NSPopUpButtonCell 旁注 我必须为 NSTableHeaderView 使用自定义子类 否则菜单不会弹出 除了右上角有一
  • Meteor:检测嵌套模板中的事件

    新手流星问题 我的代码与此大致相似
  • 如何使用 string.join 连接对象数组中的值?

    我有一个对象数组 例如 MyObject objs 在 MyObject 中它包含一个字符串属性 object 0 stringValue 如果我想按对象加入整个对象数组stringValue 我该怎么做 string Join objs
  • 为什么,致命错误:在...中找不到类“PHPUnit_Framework_TestCase”?

    为什么我会收到此 PHP 错误 Fatal error Class PHPUnit Framework TestCase not found in 对于那些在将 phpunit 更新为之后到达这里的人版本 6 或更高版本于 2017 02
  • 如何在WordPress页面模板中显示分类法的帖子?

    不确定以前是否有人问过这个问题 但我有点迷失 我创建了一个 新闻编辑室 Pod 其中包含新闻编辑室类别的自定义分类法 新闻编辑室类别有 3 个字段 新闻稿 媒体 其他 我有一个 WordPress 页面模板 taxonomy newsroo
  • .includes() 算法和速度?

    我有兴趣知道 includes 方法使用什么算法 它是否使用像 rabin karp 这样的模块化哈希 在不了解更多有关其方法和速度的情况下 我对使用 includes 有点犹豫 我发现的文档在讨论它时没有详细说明 例如https deve