无限循环-Javascript-怎么了

Infinite For Loop - Javascript - Whats wrong?

本文关键字:怎么了 -Javascript- 无限循环      更新时间:2023-09-26
function sortArray(array) {
    var tempArray = [];
    var tempNum;
    var tempPos;
    for (var i = 0; i < array.length; i+= 1) {
        if (i = 0) {
            tempNum = parseInt(array[i]);
            tempPos = 0;
        }
        else if (parseInt(array[i]) <= tempNum) {
            tempNum = parseInt(array[i]);
            tempPos = i;
        }
    console.log(i);
    }
}

它应该取一个数组,并将其从最小到最大排序,但由于for循环变为无穷大,它甚至没有做到这一点。我做错了什么?

您在第一个if中设置i = 0,这意味着您永远不会有足够大的i来退出for循环。你想用==代替

即:

if (i = 0) {
    tempNum = parseInt(array[i]);
    tempPos = 0;
}

应该是

if (i == 0) {
    tempNum = parseInt(array[i]);
    tempPos = 0;
}