我已经声明了Array原型myArrayMax,并且在w3schools.com上的其他资源进行反复验证之后,代码似乎正确:
该代码用于查找给定数组中的最大数目。
但是,它不起作用,并且控制台显示以下错误消息:
未捕获的TypeError:points.myArrayMax不是函数
在此原型声明中找不到问题
var points = [40, 100, 1, 5, 25, 10];
document.getElementById("demo").innerHTML = points.myArrayMax();
var len, max;
Array.prototype.myArrayMax = function() {
len = this.length;
max = -Infinity;
while (len--) {
if (this[len] > max) {
max = this[len];
}
}
return max;
}
<h2>JavaScript Array Sort</h2>
<p>The highest number is <span id="demo"></span>.</p>
答案 0 :(得分:4)
因为您要尝试使用Array.myArrayMax
之前,所以您实际上要对其进行定义。
var points = [40, 100, 1, 5, 25, 10];
var len, max;
Array.prototype.myArrayMax = function() {
len = this.length;
max = -Infinity;
while (len--) {
if (this[len] > max) {
max = this[len];
}
}
return max;
}
console.log(points.myArrayMax());