Как найти наибольшее число, используя математический объект с подсказкой и циклом FOR или циклом do/while?

#javascript

Вопрос:

Моя цель состояла в том, чтобы найти наибольшее число, используя математический объект в консоли. Однако как я мог бы использовать цикл FOR для ЗАПРОСА числа 1, числа 2, чтобы мне не нужно было записывать весь объект целиком? Я просто хотел возвращать значение каждый раз, когда использую цикл, но не мог так думать, поэтому позже мне пришлось написать объект.

  var num = {  x: parseInt(prompt("Enter your number1")), Y: parseInt(prompt("Enter your number2")), W: parseInt(prompt("Enter your number1")), Z: parseInt(prompt("Enter your number1")),  }  console.log(Math.max(num.x, num.Y,num.Z,num.W));   

Комментарии:

1. Циклы ничего не возвращают, их могут использовать только функции return .

Ответ №1:

Вы можете перебирать ключи объекта

 var num = {  x: 0,  Y: 0,  W: 0,  Z: 0, }  Object.keys(num).forEach(key =gt; num[key] =  prompt(`Enter your ${key}`));  // Object.keys(num).forEach(function(key) {  // num[key] =  prompt('Enter your '   key); // });  console.log(num); 

для цикла и массива

 var nums = [];  for (var i=0; ilt;4; i  ) {  nums.push( prompt('Enter your '   i)); }  console.log(nums); console.log(Math.max(...nums)); 

Комментарии:

1. Не ошибаюсь, но этот парень кажется новичком в кодировании, и использование лямбд для перебора наборов ключей может быть немного продвинутым.

2. Большое спасибо. Да, я полный новичок. Я хотел использовать цикл FOR для запуска ЗАПРОСА несколько раз, но изо всех сил пытался получить значение каждого ЦИКЛА в консоли для сравнения чисел в математическом объекте. Например: для (var i=0; I

3. Так что переместите их в массив. forEach похож на цикл for. Он просто перебирал все ключи объекта.

4. ФАНТАСТИКА!! С моим уровнем, это был тот, кого я искал. Спасибо @epascarello За все самое лучшее.

5. @epascarello Ваше .keys().forEach() решение неполное. В нем не показано, как получить максимальное количество чисел после того, как вы установите их в ключи объектов. Math.max(...Object.values(num))