Я создаю новый бомбардир из старого.Я создал исходный объект, ключи которого являются баллами, а значение для каждого ключа представляет собой массив букв.Это старый ключ счета.
Я пытаюсь создать функцию, которая берет каждое буквенное значение из массива значений в старом ключе счета и создает новый ключ для каждого в новом объекте (что я сделал), а затем назначает каждой буквызначение точки, которое было их соответствующим номером ключа от исходного объекта.
Я не уверен, как присвоить буквам значение точки, которое они первоначально дали в старом объекте ключа счета.
Функция, которую я создал:
function transform(oldScoreKey) {
let newScoreKey = {};
for (var item in oldScoreKey) {
for (i = 0; i < oldScoreKey[item].length; i++) {
newScoreKey[oldScoreKey[item][i]] = Object.keys(oldScoreKey)[0];
}
}
return newScoreKey;
}
Старый ключ счета:
const oldScoreKey = {
1: ['A', 'E', 'I', 'O', 'U', 'L', 'N', 'R', 'S', 'T'],
2: ['D', 'G'],
3: ['B', 'C', 'M', 'P'],
4: ['F', 'H', 'V', 'W', 'Y'],
5: ['K'],
8: ['J', 'X'],
10: ['Q', 'Z']
};
с этим кодом я получаю результаты {A: '1', E: «1», I: «1», O: «1» и т. Д.}
, когда я ожидал получить
{A: '1', D: '2', J:' 8 ', Q:' 10 'и т. Д.}