2016-11-24 133 views
-3

我有两个数组,一个用键,另一个用它们的值。我将它们组合成一个对象。我想从对象中选择几个(不是全部)键和它们的值并打印这两个键 - 键和值。请没有jQuery或任何其他框架。这是我的例子:打印键和值javascript对象

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

遍历键名称并打印它们和字典值。

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

谢谢巴尔玛。那会做。 – ajay

0

尝试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