小编Jos*_*ddy的帖子

未定义不是对象(评估myArray.length)

我一直在研究一个使用快速排序算法对数字数组进行排序的程序.这是我的代码:

    var myArray=[8,2,5,6];

function quickSort(myArray)
{
    if (myArray.length === 0){
        return [];
    }

    var left=[];
    var right=[];
    var pivot= myArray[0];

    for (var i=1; i<myArray.length; i++){

        if (myArray[i]<pivot) {
            left.push(myArray[i]);

        }

        else {

            right.push(myArray[i]);
        }
    }

    return quickSort(left).concat(pivot, quickSort(right));
    document.getElementById().innerHTML = quickSort(left).concat(pivot, quickSort(right));
}
Run Code Online (Sandbox Code Playgroud)

这是我的HTML

<html>
<h1>QuickSorter</h1>
<button onclick="quicksort()">Quick Sort It!</button>
<script src="quicksort.js"> </script>
</html>
Run Code Online (Sandbox Code Playgroud)

safari中的控制台一直向我显示:

TypeError: undefined is not an object (evaluating myArray.length)
Run Code Online (Sandbox Code Playgroud)

我真的不明白为什么它不起作用.任何帮助,将不胜感激.

html javascript safari quicksort

4
推荐指数
1
解决办法
3万
查看次数

标签 统计

html ×1

javascript ×1

quicksort ×1

safari ×1