首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >javascript数组什么时候可以在key: value对中存储元素,其中的键具有'string‘值?

javascript数组什么时候可以在key: value对中存储元素,其中的键具有'string‘值?
EN

Stack Overflow用户
提问于 2018-08-16 04:01:48
回答 1查看 507关注 0票数 2

据说javascript中的所有东西都是对象。因此,为了详细理解这个概念,我编写了以下代码,但得到了一些意想不到的结果。

var color = [];
console.log(color.constructor === Array);
color[color['purple'] = 2] = 'green';
console.log(color);
console.log(color.constructor === Array);
console.log(Array.isArray(color));

根据我的理解,数组只有在键值为number时才能保存值。为了将key存储为字符串,我们使用对象。然而,上面的代码导致了这一结果。

true
[ <2 empty items>, 'green', purple: 2 ]
true
true

typeof color将导致object,但这是所有数组的通用情况。在color变量中,purple: 2是一个有效的元素吗?color不应该是对象而不是数组吗?或者,有没有其他内置的方法可以让我检查变量是数组还是对象?

这些类型的问题以前也被问过,但场景略有不同。我寻找了这个特定的案例,但没有得到任何令人满意的结果。

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51865641

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档