2016-11-24 3 views
-3

У меня есть два массива, один с ключами, а другой с их значениями. Я объединил их в объект. Я хочу выбрать несколько (не все) ключи и их значения из объекта и напечатать оба - ключ, а также его значение. Нет jQuery или любой другой структуры, пожалуйста. Вот мой пример:print key и value javascript object

keys = ["AB", "CD", "EF", "ABC", "ZZZ"]; 
 
values = ["1", "2", "9", "DB", "xxx"]; 
 

 
var dict = {}; 
 
for (var x=0; x<keys.length; x++){ 
 
\t dict[keys[x]] = values[x]; 
 
} 
 

 
console.log(dict['EF']); \t //9

Как получить результат, как EF: 9

+1

Как вы планируете выбрать ключи? – nottu

+0

Есть два вопроса: как объединить два массива в простом объекте ('{AB: '1', CD: '2', ...}') и как выбрать определенное значение с помощью ключа ('EF '→' 9'). Сначала объясняется в комментариях, ответ на второй - это последняя строка в вашем коде. –

+0

Я знаю имена ключей для печати - EF и ZZZ, например – ajay

ответ

0

перебираемимена клавиш и распечатать их и значения dict.

keys = ["AB", "CD", "EF", "ABC", "ZZZ"]; 
 
values = ["1", "2", "9", "DB", "xxx"]; 
 

 
var dict = {}; 
 
for (var x=0; x<keys.length; x++){ 
 
\t dict[keys[x]] = values[x]; 
 
} 
 

 
var keys_to_find = ['EF', 'ZZZ']; 
 
keys_to_find.forEach(function(key) { 
 
    console.log(key + ":" + dict[key]); 
 
});

+0

Спасибо, Barmar. Что будет делать. – ajay

0

Try for петли

keys = ["AB", "CD", "EF", "ABC", "ZZZ"]; 
 
values = ["1", "2", "9", "DB", "xxx"]; 
 

 
var dict = {}; 
 
for (var x = 0; x < keys.length; x++) { 
 
    dict[keys[x]] = values[x]; 
 
} 
 

 
for (let i in dict) { 
 
    console.log("key : " + i + " value : " + dict[i]); 
 
}

+0

Я упомянул, что хочу всего несколько ключей - не все. Петля не поможет. Эта часть, которую я уже знал. – ajay

+1

@ajay Как вы будете выбирать, какие клавиши печатать? –

+0

Я знаю имена ключей для печати - EF и ZZZ, например – ajay

Смежные вопросы