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++) {
}
这里有一些建议
- 通过
window.onload
将您的逻辑包装在脚本中
- 不要混淆您的标记和 javascript。
- 尝试在 javascript 结束时绑定事件
按照以上建议,您的错误将得到修复。
我有一个简单的函数,似乎在每次调用该函数时都会导致 '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++) {
}
这里有一些建议
- 通过
window.onload
将您的逻辑包装在脚本中
- 不要混淆您的标记和 javascript。
- 尝试在 javascript 结束时绑定事件
按照以上建议,您的错误将得到修复。