Как мне преобразовать этот объект в массив в JavaScript? - PullRequest
0 голосов
/ 22 декабря 2009

Как мне преобразовать testObj в массив?

function MinEvent(event, width, left){
  this.start = event.start;
  this.end = event.end;
  this.width = width;
  this.top = event.start;
  this.left = left;
}

var testObj = {};
for (var j=0; j<eventLists.length; j++) {
  var eve = eventLists[j];
  var event = new MinEvent(eventList[j], width, left);
  testObj[eve.id] = event;
}

Ответы [ 4 ]

1 голос
/ 22 декабря 2009

Технически каждый объект в javascript может рассматриваться как массив. Ваш код должен работать как есть.

Но в любом случае, глядя на ваш код, почему бы не определить testObj как var testObj = [];?

0 голосов
/ 22 декабря 2009
var array = []
for( var prop in testObj )
{
    array.push( testObj[prop] );
}

Это то, что вы хотите?

0 голосов
/ 22 декабря 2009

Если вы изначально объявляете testObj как массив, вам не нужно его преобразовывать.

//declare the array
var testObj = new Array();

или

//declare the array
var testObj = [];

Доступ на основе индекса должен работать для любого из них. * 1008 Т.е. *

testObj[0] = "someval";

и т.д.

0 голосов
/ 22 декабря 2009

Я не уверен, почему вы хотите это сделать. Объекты JavaScript фактически такие же, как ассоциативный массив. Вы можете получить доступ ко всем его свойствам и методам следующим образом:

for(prop in obj) {
    alert(prop + ” value : ”+ obj[prop];
}

Возможно, было бы полезно, если бы вы сказали нам, что вы хотите сделать после преобразования объекта в массив (и как вы хотите, чтобы результат выглядел).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...