@Kn94234

Как определить переменную в цикле?

Хочу, чтобы переменная создавалась в цикле, либо значение присваивалось заранее созданной переменной. "zp[i]" - не рабочий вариант, просто чтобы показать, что я хочу. Массивы пока не рассматриваю.
let zp1;
let zp2;
let zp3;

for (let i=1; i<=3; i++) {
zp[i]=prompt('Введите зарплату '+ [i]+ ' сотрудника');
}
  • Вопрос задан
  • 164 просмотра
Решения вопроса 2
MalkovVladimir73
@MalkovVladimir73
Fullstack (node + vue.js)
По моему мнению вам следует использовать объект и обращаться к его свойствам.
Ну а ваш пример можно сделать рабочим примерно так:
function example() {
  for (let i = 1; i <= 3; i++) {
    this['zp' + i] = prompt('Введите зарплату '+ [i]+ ' сотрудника');
  }

  console.log(zp1, zp2, zp3);
}

example();
Ответ написан
Комментировать
Вам как раз нужен массив в этом случае, потому что без него получится лютый костыль, который будет работать только с глобальным контекстом:

Без массива:

for (let i = 1; i <= 3; i++) {
  self[`zp${i}`] = prompt('Введите зарплату ' + i +  ' сотрудника');
}

console.log(zp1, zp2, zp3) // глобальные переменные


С массивом:

const zp = []

for (let i = 1; i <= 3; i++) {
  zp[i - 1] = prompt('Введите зарплату ' + i +  ' сотрудника');
}

console.log(zp[0], zp[1], zp[2])
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы