2014-11-21 3 views
-1

Я добавляю значения в объект, но я хочу, что объект имеет определенный формат, как это:Добавление элементов объекта в JavaScript

Результат: Object {ES: 16.63, DE: 11.58, US: 158.97, CA: 85.81, IN: 1.1}

Декларация:

var mydata2 = { 
       "ES": 16.63, 
       "DE": 11.58, 
       "US": 158.97, 
       "CA": 85.81, 
       "IN": 1.1 
      }; 

Но когда я добавляю объект динамически, я не могу сделать то же самое, и результат не тот, который я хочу. Для Exemple я пытался сделать это:

$.getJSON('countries.json', function(json){ 
     $.each(json.value.Map, function(index,value){ 

       cvalue[index]=this.count; 

       i++; 
     }); 
     console.log(cvalue); 

И результат этого один: [uk: 21, it: 35, jp: 22, ar: 13, us: 123…] и расширено:

ar: 13 
au: 33 
be: 160 
br: 30 
cl: 26 
co: 16 
... 

Я уверен, что есть способ сделать это, но я Жду» t нашел это.

EDIT

Цель этого вопроса разобрать данные в этом формате: Object {ES: 16.63, DE: 11.58, US: 158.97, CA: 85.81, IN: 1.1} потому что после того, что мне нужно, чтобы получить данные в этом формате.

+1

Вы хотите ключи, чтобы быть в верхнем регистре? Это вопрос? – Mathletics

+0

В чем проблема? Что не так с вашим результатом? Что такое 'cvalue'? Где это определено? –

+0

@Mathletics Не эта проблема. Только я хочу включить данные json с этим форматом 'Object {ES: 16.63, DE: 11.58, US: 158.97, CA: 85.81, IN: 1.1}' вместо текущего формата: '[uk: 21, it: 35, jp : 22, ar: 13, us: 123 ...] ' – Lins

ответ

1

Необходимо использовать MAP. Возможно, cvalue - простой массив.

Пример объявления карты:

var map = new Object(); 

map[index]=this.count; 
Смежные вопросы