javascript比较两个对象并打印值

时间:2018-07-13 11:58:32

标签: javascript

比较两个javascript对象以及数组和控制台各自的值。有人可以帮忙吗

const Icons = {
  mail: 'fa fa-envelope',
  phone: 'fa fa-phone',
  user: 'fa fa-user',
  cart: 'fa fa-cart'
};

const icon = [
  'mail',
  'phone',
  'user',
  'cart'
];

icon.map(function(v, i) {
  console.log(i, Icons.v);
});

预期输出:

0,fa fa-envelope
1,fa fa-phone
2,fa fa-user
3,fa fa-cart

变得不确定,谁能告诉我怎么了

2 个答案:

答案 0 :(得分:2)

您将获得undefined,因为Icons没有属性v

由于v是变量,请使用Bracket notation。即Icons[v]

const Icons = {
  mail: 'fa fa-envelope',
  phone: 'fa fa-phone',
  user: 'fa fa-user',
  cart: 'fa fa-cart'
};

const icon = [
  'mail',
  'phone',
  'user',
  'cart'
];

icon.map(function(v, i) {
  console.log(i, Icons[v]);
});

答案 1 :(得分:1)

const Icons = {
 mail:'fa fa-envelope',
 phone:'fa fa-phone',
 user:'fa fa-user',
 cart:'fa fa-cart'
};

const icon = [
    'mail',
    'phone',
    'user',
    'cart'
];

icon.map(function(v,i){
  console.log(i,Icons[v]);  //try this
});