2012-05-16 3 views
0

Я использую jquery, но я не уверен, что проще с помощью javascript. Переменные будут достаточно большими, чем данные (несколько мегабайт).Как хранить несколько таблиц данных в одном объекте javascript?

Это собирается быть:

table one -> {item one, item 2, item 3, item 4}, 
table two -> {item one, item 2, item 3, item 4}, 
table three -> {item one, item 2, item 3, item 4}, 
etc 

Я не уверен, какой код необходимо получить его в этот формат, хотя.

Я в основном читаю из многих html-таблиц, которые имеют строки и столбцы данных в каждой таблице, и я хочу объединить все в одну переменную, чтобы печатать в конце на экране, когда я закончил.

+0

Что у вас есть? – ilanco

+0

var output = new Array(); ROFL. – Tallboy

+3

Постарайтесь усерднее. ROFL. – ilanco

ответ

0

Использование JSON вы должны иметь что-то вроде этого:

data = { 
    table1:{ 
     row1: { data1: value, data2: value, ..., dataN: value }, 
     row2: { data1: value, data2: value, ..., dataN: value }, 
     ... 
     rowN: { data1: value, data2: value, ..., dataN: value } 
    }, 
    table2:{ 
     row1: { data1: value, data2: value, ..., dataN: value }, 
     row2: { data1: value, data2: value, ..., dataN: value }, 
     ... 
     rowN: { data1: value, data2: value, ..., dataN: value } 
    }, 
    ... 
    tableN:{ 
     row1: { data1: value, data2: value, ..., dataN: value }, 
     row2: { data1: value, data2: value, ..., dataN: value }, 
     ... 
     rowN: { data1: value, data2: value, ..., dataN: value } 
    } 
} 

И, чтобы получить доступ к второй колонке, в первой строке N-го стола, вы будете иметь:

var value = data.tableN.row1.data2; 
0

ли вам абсолютно нужно хранить все данные в переменной? Если нет, вы можете печатать прямо со своих столов примерно так:

$('table').each(function() { 
    $(this).each(function() { 
     $(this).each(function() { 
      console.log($(this).text());   
     }); 
    }); 
});