JavaScriptでバイナリ検索を実装しようとしています。私は自分のスクリプトで何がうまくいかないのか分からない。検索ボタンをクリックすると、ページが反応しなくなります。事前に感謝しています。javascriptでバイナリ検索を実装する
var i,print,arr;
\t arr = [1,2,3,4,5,6,7,8,9,10];
\t print = document.getElementById("showArray");
\t for(i = 0; i < arr.length; i++){
\t print.innerHTML += arr[i] + " ";
\t }
\t function binarySearch(searchValue){
\t var lowerIndex, higherIndex, middleIndex,writeResult;
\t lowerIndex = 0;
\t higherIndex = arr.length;
\t writeResult = document.getElementById("showResult");
\t while(lowerIndex <= higherIndex){
\t middleIndex = (higherIndex + lowerIndex)/2;
\t \t if(searchValue == arr[middleIndex]){
\t \t writeResult.innerHTML = "PRESENT";
\t \t consol.log('Present');
\t \t break;
\t \t }
\t \t else if(searchValue > arr[middleIndex]){
\t \t lowerIndex = middleIndex + 1;
\t \t }
\t \t else if(searchValue < arr[middleIndex]){
\t \t higherIndex = middleIndex - 1;
\t \t }
\t }
\t }
<button onclick = "binarySearch(1)">SEARCH</button>
\t <p id = "showArray" style = "font-size: 40px; padding:0px;"> </p>
\t <p id = "showResult">Result is:</p>
無限ループ。あなたのループの始めに 'console.log(lowerIndex、higherIndex)'のようなものを置くだけで、何が起きているのかを知ることができます。 – Cully