`
husituo
  • 浏览: 27855 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

[转]比较JavaScript中的集合及其检索效率

阅读更多
http://birdshome.cnblogs.com/archive/2005/01/05/87009.html

引用
遍历Array的时间复杂度是O(n),而遍历Object的时间复杂度是O(1)。虽然对于10000次集合的for检索代价也就几十ms,可是如果是1000*1000次检索或更多,使用Object的优势一下就体现出来了。在此之前我做了一个mapping,把100个Unique的字符mapping到1000个字符串数组上,耗时25-30s!后来把for遍历改成了Object模拟的集合的成员引用,同样的数据量mapping,耗时仅1.7-2s!!!

    对于集合的遍历效率(从高到低):var value = obj[key]; > for ( ; ; ) > for ( in )。效率最差的就是for( in )了,如果集合过大,尽量不要使用for ( in )遍历。
分享到:
评论

相关推荐

    比较JavaScript中的集合及其检索效率

    在探讨JavaScript中的集合及其检索效率时,我们主要关注两种数据结构:数组(Array)和对象(Object)。这两种数据结构在JavaScript中被广泛使用,各有其优势和适用场景,尤其是在处理大量数据时,它们的检索效率...

    JavaScript中的集合及效率

    在探讨JavaScript中的集合及其效率时,我们首先要了解JavaScript语言的一些核心特性,尤其是关于对象、数组以及它们作为集合的使用方式。JavaScript中的对象(Object)和数组(Array)都是重要的数据结构,它们都...

    JavaScript王者归来part.1 总数2

     第2章 浏览器中的JavaScript  2.1 嵌入网页的可执行内容   2.2 赏心悦目的特效   2.3 使用JavaScript来与用户交互  2.4 绕开脚本陷阱 2.5 总结   第3章 开发环境和调试方法  3.1 我能用什么来编写脚本--...

    JavaScript数据结构算法.zip

    理解哈希冲突及其解决方法有助于提高数据存储和检索效率。 6. 字符串:JavaScript中的字符串是不可变的,这意味着每次修改字符串都会创建一个新的字符串对象。学习字符串的拼接、查找、替换等操作能帮助优化字符串...

    树形结构大集合

    下面我们将深入探讨这些树形结构及其在JavaScript中的应用。 1. **二叉树**:最基础的树形结构,每个节点最多有两个子节点,分为左子节点和右子节点。在JavaScript中,二叉树常用于实现查找、排序等功能,例如二叉...

    教务管理系统,AJAX,JAVAScript,

    接下来,我们将深入探讨这些关键技术及其在教务管理中的应用。 首先,AJAX是一种Web开发技术,它允许网页在不重新加载整个页面的情况下与服务器交换数据并更新部分网页内容。这在教务管理系统中体现为用户无需等待...

    js里关于bow知识点.docx

    【标题】:JavaScript中的BOW模型及其应用 【描述】:本文主要介绍JavaScript中的BOW(Bag-of-Words)模型,以及如何将其应用于图像检索和分类。BOW模型是一种简化了的文本或图像表示方法,它忽略了顺序和上下文,...

    aa.rar_javascript_jsp_jsp sqlserver

    标题 "aa.rar_javascript_jsp_jsp_sqlserver" 暗示了这是一个关于使用JavaScript、JSP、SQL Server数据库和可能的开发环境Tomcat及MyEclipse进行项目开发的资源集合。下面将详细阐述这些技术及其在Web开发中的应用。...

    ArcGIS_API_for_Javascript_开发教程

    - **查询检索**:包括查询任务、查找任务、识别任务等,用于获取地图中的信息。 - **服务器端渲染**:在服务器端进行渲染,可以减轻客户端的压力。 - **地址匹配**:通过地址匹配服务将地址转换为地理坐标。 - **...

    data_structure:用JavaScript开发的数据结构

    下面我们将深入探讨JavaScript中常见的数据结构及其应用场景。 1. 数组(Array): 数组是最基础的数据结构,用于存储一系列有序的元素。在JavaScript中,数组可以存储任意类型的数据,包括其他对象。数组提供了...

    JavaScript中创建字典对象(dictionary)实例

    在JavaScript中,字典对象(通常称为映射或哈希表)是一种数据结构,它允许我们通过特定的键(key)来查找、存储和检索值(value)。然而,JavaScript的标准库并没有内置字典对象,因此我们需要自定义实现。在本案例...

    各种中文api

    例如,集合框架是Java编程中的重要部分,包括List、Set、Map等接口及其实现类,它们为数据存储和操作提供了强大支持。 这三份中文API文档对于初学者和有经验的开发者都极具价值,因为它们不仅提供了技术细节,还...

    ssh框架面试题

    17. **cascade属性**:在Hibernate配置中,元素的cascade属性用于设置级联操作,如设置为'save-update',表示在保存或更新父bean时,会同时保存或更新集合中的对象。 18. **Hibernate中的Session游离态**:当...

    MongoDB命令查询.txt

    其中查询命令是使用频率最高的一类,它允许用户按照指定条件从集合中检索文档。 ### `findOne()` 命令详解 #### 命令格式 `db.tablename.findOne({})` 是MongoDB中最基本的查询命令之一。其格式如下: ```...

    MongDB聚合与索引操作

    在本次实验中,我们将深入探讨MongoDB中的索引操作及其重要性,并通过实践来掌握如何有效地创建和使用索引以提高查询性能。 1. **理解MongoDB索引的用途**: - 索引是MongoDB中用于加速数据检索的一种数据结构。 ...

    FaceTest[存储过程和JSON及Jquery]动态生成表格及分页

    下面我们将详细探讨这三个关键组件及其在动态表格和分页中的应用。 1. 存储过程(Stored Procedures): 存储过程是数据库中预编译的SQL语句集合,它可以执行复杂的数据库操作。在动态生成表格时,存储过程通常...

    AJAX搜索引擎研究.pdf

    - 建立倒排索引,提高检索效率。 - **检索器的关键任务**: - 根据相关度评价策略,从索引库中筛选出最匹配的文档集合。 - **用户接口的设计**: - 展示查询结果,提供反馈机制。 #### 3. AJAX技术及其对搜索引擎...

Global site tag (gtag.js) - Google Analytics