Этот сценарий, над которым я работаю, должен быть довольно простым. Пользователь представлен двумя кнопками. Один из них вводит свой собственный вход в массив. Как только этот массив был создан, он автоматически сортируется. Вторая кнопка позволяет пользователю искать любое число, которое может быть или не быть в массиве. Здесь начинается моя проблема.JavaScript - Поиск объекта в созданном пользователем массиве
Что должно произойти, так это то, что когда пользователь вводит номер, который они хотят найти. Массив ищет это число. Если число существует в этом массиве, появляется сообщение о том, что номер найден. Если номер не найден, появится сообщение с указанием.
Я чувствую, что проблема связана с циклом for в моей функции поиска. К сожалению, я еще не нашел решение самостоятельно. Когда я запустил свой код в представлении фрагмента, я получил следующую ошибку.
{"message": "Uncaught TypeError: Cannot read property 'length' of undefined",
"filename": "http://stacksnippets.net/js",
"lineno": 65,
"colno": 16 }
Последняя версия скрипта была вставлена для справки. Любая помощь приветствуется и благодарит заранее.
/* Array Function */
function arrayFunction() {
var arr = [];
for (var i = 0; i < 5; i++)
arr.push(prompt("Enter a number"));
bubbleSort(arr);
console.log(arr);
arr.toString();
window.confirm("Your sorted array is: " + arr).innerHTML = arr;
}
/* Sort Function */
function bubbleSort(arr) {
var swapped;
do {
swapped = false;
for (var i = 0; i < arr.length - 1; i++) {
if (arr[i] > arr[i + 1]) {
var temp = arr[i];
arr[i] = arr[i + 1];
arr[i + 1] = temp;
swapped = true;
}
}
} while (swapped);
}
/* Search Function */
function numSearch(arr) {
var x = window.prompt("Search for a number.");
for (var i = 0; i < arr.length; i++); {
if (arr[i] == x) {
return window.confirm("It's here.");
}
}
return window.confirm("It is not here.")
}
<html>
<head>
</head>
<body>
<script language="JavaScript">
</script>
<button type="button" onclick="arrayFunction()">Create Array</button>
<button type="button" onclick="numSearch()">Search Array</button>
</body>
</html>
Большое спасибо. – lostintranslation