无限循环 - Javascript - 什么错了?

Mar*_*dds 0 javascript arrays for-loop

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);
    }

}
Run Code Online (Sandbox Code Playgroud)

它应该采用一个数组并从最小到最大的顺序排序但是甚至没有达到那么远,因为for循环变得无限.我做错了什么?

Ste*_*nTG 5

你正在设置i = 0第一个if,这意味着你永远不会有足够的大小来退出for循环.你想要==改用

即:

if (i = 0) {
    tempNum = parseInt(array[i]);
    tempPos = 0;
}
Run Code Online (Sandbox Code Playgroud)

应该

if (i == 0) {
    tempNum = parseInt(array[i]);
    tempPos = 0;
}
Run Code Online (Sandbox Code Playgroud)