当 value="1,10,20,a,5,9,100"时,最大值是a
当 value="1,10,20,a,A,5,9,100"时,还是a
当 value="1,10,20,5,9,100"时,居然是9
当 value="1,10,20,a,A,?,5,9,100"时,居然是?号
现在我把let函数改变一下。
function let() {
if (document.getElementById("txt")) {
var txtb = document.getElementById("txt");
var arr1 = new Array();
arr1 = txtb.value.toString().split(",");
----- alert(typeof arr1[0]);----
alert(getMax(arr1));
}
}
当在let函数中执行到这里的时候
alert(typeof arr1[0]);我们发现arr1[0]是string类型
现在我们改变一下 getMax函数
function getMax(arr) {
this.maxnum = arr[0];
for (var i = 1; i < arr.length; i++) {
---- alert(typeof arr[i]);---
if (arr[i] > this.maxnum) {
this.maxnum = arr[i];
}
}
return this.maxnum;
}
当我们函数再次执行到alert(typeof arr[i]);的时候发现,循环中全部是string类型。
所以答案很明确了ASCII码。 |