Я пытаюсь создать простую функцию в javascript
, которая принимает числовой ввод. Хранит это. И как только сумма всех введенных чисел равна или больше 50, для запроса на выход и для console.log
для отображения количества набранных цифр и общей суммы.
Это HTML код, который связывает мой JS файл.
<!DOCTYPE html>
<html>
<head>
<title>Ex6 JS</title>
<script type="text/javascript" src="ex6.js"></script>
</head>
<body>
<h1>Exercise 6 JS</h1>
</body>
</html>
var my_array = [];
var sum=0;
var num_infinito = parseInt(prompt('Introduzca todos sus numeros'));
my_array.push(num_infinito);
if(my_array >= 50){
cantidadNumeros();
sumaNumeros();
}else{
obtenerMasNumeros();
}
function obtenerMasNumeros(){
var num_infinito = parseInt(prompt('Introduzca todos sus numeros'));
my_array.push(num_infinito);
for (var i = 0; i < my_array.length; i++) {
sum += my_array[i++];
if (sum>50) {
cantidadNumeros();
sumaNumeros();
} else if (sum<50){
var num_infinito = parseInt(prompt('Introduzca todos sus numeros'));
my_array.push(num_infinito);
} else {
cantidadNumeros();
sumaNumeros();
}
}
}
function cantidadNumeros(){
//var my_arrayIndex = my_array.length;
console.log('Has ingresado '+ String(my_array.length) + ' numeros');
}
function sumaNumeros(){
console.log('La suma de los numeros ingresados es ' + String(sum));
}
Вывод этого кода на данный момент таков:
Приглашение ввести номер. Если число> = 50, оно останавливается, но если число <= 50 (допустим, я ввожу 40), оно входит в функцию. Как только он входит в функцию, я наберу 50, но вместо остановки в первом операторе «если» он переходит прямо к состоянию «еще, если». Итак: мне предлагается ввести еще одно число, 40. </p>
После ввода 40 получится:
Has ingresado 3 numeros
La suma de los numeros ingresados es 80
Итак, по какой-то причине второй 50 игнорируется, и он сразу переходит к третьему входному номеру (40) и добавляет его к первому входному номеру.
ВТОРОЙ
, если мне предложат набрать, и я наберу [1], а затем go для ввода 2, затем 3 и затем 4, функция останавливается на 4 и возвращает массив с 4 числами (1, 2, 3, 4), но без какого-либо вывода
THIRDLY
Скажем, 40 - первый вход, затем 10, затем 10. вывод:
total sum = 50 and my_array[3]