附加到一个对象- javascript

Appending to an object - javascript

本文关键字:javascript 一个对象      更新时间:2023-09-26

如果我执行以下操作,

var array = [];
array['foo'] = [];
console.log(array.length)   // => 0

console.log打印0长度。

是否有一种方法来推键值数组在javascript?总的来说,这是个坏主意吗?我需要自己更新长度吗?

可以选择使用括号表示法(SO - JavaScript Array Push key value)。

但是在后面的代码中,我想推到对象/数组,所以建议再次使用数组(SO -追加到对象)。

所以我不太确定使用哪种数据结构。对于我的任务,我想我需要键值。这是一个异步任务,我不能依赖于顺序在一个未命名的数组。但就我目前所读到的,追加对象似乎也是一种hack。

你可以推送一个对象:

var arr = [];
var obj = {foo: "bar"};
arr.push(obj);
arr.length; //1
arr[0].foo; //"bar"

您可能应该使用javascript object,它充当键/值对数据结构(如HashMapDictionary)。

var data = {
  key: 'value'
}
data['key'] // 'value'
Object.keys(data).length // 1

为了你将来的自我,你不应该给数组添加属性,也不应该尝试用对象模拟数组。