NodeJS: Как добавить переменную к возврату для JSON .parse ()? - PullRequest
0 голосов
/ 16 января 2020

Я очень плохо знаком с node.js.

У меня есть JSON, который я читаю с веб-сайта. Не публикуя слишком много JSON, вот примерно то, на что я смотрю:

{
   "Head": {
      "Front": "80",
      "Side": "85",
      "Back": "75"
   },
   "Neck": {
      "Front": "65",
      "Side": "70",
      "Back": "60"
   }
}

У меня есть функция, которая отформатирована следующим образом:

function whichBodyPart(part, file, time) {
      var fileParse = JSON.parse(file);
      var type;
      switch(time.toLowerCase()){
        case ('9AM'):
            type = 'Front';
        break;
        case ('12PM'):
            type = 'Side';
        break;
        case ('3PM'):
            type = 'Back';
        break;
    }
    return fileParse.part.type;
  }

part - это переданное пользователем значение, которое в данном случае будет либо "Head", либо "Neck".

file - это неразобранный JSON файл. Я анализирую это в функции.

Я знаю, что для извлечения значения указанного элемента c из файла JSON, который у меня есть, я мог бы сделать что-то вроде

return fileParse . Head.Back

, и это вернет мне значение "75". Тем не менее, я пытаюсь перемещаться по JSON со значениями из переменных part и type .

Например, если часть - это "шея", а тип - это "сторона", я хочу получить значение "70" из JSON. Однако, если пользовательский ввод part в качестве «Head» и type - «Front», я хочу получить «80».

Как мне сделать возврат способен обрабатывать различные входы?

1 Ответ

1 голос
/ 16 января 2020

Вы можете использовать скобочные обозначения JavaScript для обработки ваших различных входных данных. Попробуйте:

return fileParse[part][type]
...