Попытка передать ключ к аргументу в пользовательской функции для отображения всех значений из данных - PullRequest
0 голосов
/ 31 мая 2019

Когда я вызываю функцию с аргументом, она ничего не показывает.

Я попробовал ниже, и она работает, но когда я добавил ее в функцию, она перестала работать.

WORKING

var data = [

  {"blue": ['Volvo','Saab','Mercedes']},
  {"wheel": ['Saab','Mercedes','BMW']},
  {"fast": ['Saab','BMW','Ford']}

];

$.each(data, function(i) {
  var plans = data[i].blue;
    $.each(plans, function(b,qf) {
      console.log(qf);
    });
});

NOT WORKING

var data = [

  {"blue": ['Volvo','Saab','Mercedes']},
  {"wheel": ['Saab','Mercedes','BMW']},
  {"fast": ['Saab','BMW','Ford']}

];

function aData(selected) {
  $.each(data, function(i) {
    var plans = data[i].selected;
      $.each(plans, function(b,qf) {
        console.log(qf);
      });
  });
}

aData(blue);

Я ожидаю, что он покажет все значения для ключа: синий.Но ничего не появляется.

Ответы [ 2 ]

0 голосов
/ 31 мая 2019

попробуйте

var data = [

      {"blue": ['Volvo','Saab','Mercedes']},
      {"wheel": ['Saab','Mercedes','BMW']},
      {"fast": ['Saab','BMW','Ford']}

    ];

    function aData(selected) {
      $.each(data, function(i) {
        var plans = data[i][selected];
        if (plans) {
          $.each(plans, function(b,qf) {
            console.log(qf);
          });
          }
      });
    }

    aData('blue');
0 голосов
/ 31 мая 2019

Две ошибки:

1) .selected запутывает вас.Используйте [selected].

2) Убедитесь, что вы используете строку для ввода в последней строке.Это ломает пример, но я предполагаю, что вы вызываете это откуда-то еще в вашем реальном приложении.

...