Javascript 导致错误的函数未定义

Javascript function causing error not defined

我有一个简单的函数,似乎在每次调用该函数时都会导致 'Uncaught ReferenceError: arraySort is not defined',在这种情况下是通过一个按钮,我不明白为什么任何帮助都会很棒。

Javascript

    <script language="javascript">
        var unsorted = ["Printer","Tablet","Router"];
        var alphaOrder = [" ","A","a","B","b","C","c","D","d","E","e","F","f","G","g",  //15
                          "H","h","I","i","J","j","K","k","L","l","M","m","N","n","O",  //30
                          "o","P","p","Q","q","R","r","S","s","T","t","U","u","V","v",  //45
                          "W","w","X","x","Y","y","Z","z","0","1","2","3","4","5","6",  //60
                          "7","8","9","'","?","!",".","\"","<",">","@",",","#","~","=", //75
                          "+","-","_","/","\"];

        function arraySort(array){
            var sortedArray = [];
            var letterNum = 0;
            var numArray = [];

            function letterToNum(){
                for (var elementNum = 0; elementNum < array.length; elementNum++;){
                    for (var alphaNum = 0; alphaNum < alphaOrder.length; alphaNum++;){
                        numArray[elementNum] = alphaOrder.indexOf(array[elementNum][letterNum]);
                        document.getElementById('tester1').innerHTML = numArray;
                    }
                }
            }
        }   
    </script>

HTML

    <button type = "button" onclick = "arraySort(unsorted)">Sort</button>

从循环末尾删除分号。

for (var elementNum = 0; elementNum < array.length; elementNum++) {
    for (var alphaNum = 0; alphaNum < alphaOrder.length; alphaNum++) {
    }

这里有一些建议

  1. 通过window.onload
  2. 将您的逻辑包装在脚本中
  3. 不要混淆您的标记和 javascript。
  4. 尝试在 javascript 结束时绑定事件

按照以上建议,您的错误将得到修复。