JavaScript无法获取最大或最小值或数组
你好,我有一个数组,我似乎不能得到它的最小值和最大值idk什么是错误的这里是我的代码JavaScript无法获取最大或最小值或数组,javascript,arrays,max,minimum,Javascript,Arrays,Max,Minimum,你好,我有一个数组,我似乎不能得到它的最小值和最大值idk什么是错误的这里是我的代码 var repeat, studentArr = [], markArr = []; while (repeat !== 'n' && repeat !== 'N'){ studentArr.push(prompt("Enter Student Name: ")); markArr.push(parseInt (prompt("Enter Student mark: ")
var repeat, studentArr = [], markArr = [];
while (repeat !== 'n' && repeat !== 'N'){
studentArr.push(prompt("Enter Student Name: "));
markArr.push(parseInt (prompt("Enter Student mark: ")));
repeat = prompt ("Do you want to enter another student: y/n");
}
function min (markArr){
var min = Number.Max_Value;
for(var i = 0; i < markArr.length; i++){
if(number(markArr[i]) < min)
min = number(markArr[i]);
}
return markArr;
}
var smallest = min(markArr);
function max (markArr){
var max = Number.Max_Value;
for(var i = 0; i > markArr.length; i++){
if(number(markArr[i]) < max)
max = number(markArr[i]);
}
return markArr;
}
var largest = max(markArr);
document.write(largest);
var repeat,studentar=[],markArr=[];
while(重复!='n'&&repeat!='n'){
push(提示(“输入学生姓名”);
markArr.push(parseInt(提示(“输入学生标记”));
repeat=提示(“您想输入另一个学生:是/否”);
}
最小功能(markArr){
var min=Number.Max_值;
对于(变量i=0;imarkArr.length;i++){
if(数量(markArr[i])
您可以从Javascript扩展数组
类型,例如:
Array.prototype.min = function(comparer) {
if (this.length === 0) return null;
if (this.length === 1) return this[0];
comparer = (comparer || Math.min);
var result = this[0];
for (var i = 1; i < this.length; i++)
result = comparer(this[i], v);
return result;
}
Array.prototype.max = function(comparer) {
if (this.length === 0) return null;
if (this.length === 1) return this[0];
comparer = (comparer || Math.max);
var result = this[0];
for (var i = 1; i < this.length; i++)
result = comparer(this[i], v);
return result;
}
查看
jsbin
:您的函数返回的是数组,而不是数字。您在哪里定义了函数number
<代码>引用错误:未定义数字。请仔细查看此函数中的比较含义:函数max(markArr)
这是一种更好的方法。我认为您使用的这个数字函数不存在。如果要将其转换为数字,请使用parseFloat()
var minValue = yourArray.min();
var maxValue = yourArray.max();