Как создать многоуровневый массив, который использует буквенные строки (Javascript)? - PullRequest
0 голосов
/ 29 апреля 2020

Благодаря @ Aplet123 я могу хранить буквенные строки в массиве как функции. ( предыдущий выпуск ) Это прекрасно работает. Но я не могу понять, как сделать то же самое с вложенными массивами. Например:

var nameTemp = `Placeholder`;
Title[0] = () => `what are you called?`;
Title[1] = () => `what does ${nameTemp} do?`;
Title[2] = () => `How old is ${nameTemp} ?`;

//--I get the users name from an input.text element and store in nameTemp
textbox.textContent = Title[1]();

Это хорошо работает. Возвращает «что [имя введено] делает?» и обновляет буквенную строку при вызове Title[x]().

Но у меня есть несколько текстовых элементов на странице, и я хотел бы иметь возможность получить их, используя что-то вроде:

Title[1][1] = () => `what does ${nameTemp} do?`;

Я пробовал разные вещи, но они либо не возвращают длину второго массива, либо не запускают функцию:

var testC = [];
testC[0] = [];
testC[0][0]  = ()  => ` what does ${nameTemp} do?`;
console.log(testC[0][0]);  

это просто возвращает « () =>` что делает $ {nameTemp}? ”, он не запускает функцию.

Есть идеи? Заранее спасибо за любую помощь.

1 Ответ

0 голосов
/ 29 апреля 2020

Возвращает функцию, и вы забыли вызвать функцию, используя ()

var nameTemp = 'John';
var testC = [];
testC[0] = [];
testC[0][0]  = ()  => ` what does ${nameTemp} do?`;
console.log(testC[0][0]()); 
...