#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))