js数组和对象哪个效率高

 我来答
幸福还是模糊
2019-03-29 · 超过18用户采纳过TA的回答
知道答主
回答量:50
采纳率:0%
帮助的人:15.6万
展开全部
这个问题是好问题。能问这个说明JS是入门了。
首先JS的数组和C语言的数组是不一样的。C的数组是连续内存存储,通过指针或这下标可以直接定位数组中的元素。而JS的实现要复杂一些。
JS中,数组的内部实现有点不一样,如果数组使用的过程中,所有的元素都是同样的结构,那么会尽可能按照C语言的方法去实现,但是一点添加一个异类的元素,JS解释器会立刻重构这个数组,采用哈希表。你可以认为大多数情况下,都是用哈希表的。哈希表不光要算哈希值,而且如果数组特别大的情况,还要有复杂度为O(n)的链表遍历。很亏。最后,JS的数组的索引看起来是个数字,但是实际上在实现的时候,会被内部转换为字符串……
育知同创教育
2018-06-27 · 百度知道合伙人官方认证企业
育知同创教育
1【专注:Python+人工智能|Java大数据|HTML5培训】 2【免费提供名师直播课堂、公开课及视频教程】 3【地址:北京市昌平区三旗百汇物美大卖场2层,微信公众号:yuzhitc】
向TA提问
展开全部
数组和对象是两种存储结构,性能的问题取决于使用for还是for in,for 的的性能明显会高于for in因为前者直接遍历数据,但是他不能访问到对象的key值,而后者则可以具体访问到key,具体使用您可以google,在使用for in的时候会遍历对象的原型链这样会增加算法的时间复杂度,所以说性能问题不再存储结构上,而在于遍历上。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友063d7ebd027
2017-03-17 · TA获得超过828个赞
知道小有建树答主
回答量:873
采纳率:91%
帮助的人:232万
展开全部
对象数组:里面存放对象的数组 数组对象:js中数组就是个对象 是这样的? 对象数组不还是数组?什么使用条件...?你要存什么数据就存呗,js弱类型,数组不是只能存单一类型的。老实说不存在什么对象数组,字符串数组的分类
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式