Javascript 如何在这种数组中找到元素的最大值?
我正在寻找正确的代码,以便名为“finder()”的函数可以执行并在名为“sum”的数组中找到最高值。 按“查找最大值”按钮时,结果为:“[object HTMLInputElement]” 谢谢你的帮助! 以下是代码:Javascript 如何在这种数组中找到元素的最大值?,javascript,Javascript,我正在寻找正确的代码,以便名为“finder()”的函数可以执行并在名为“sum”的数组中找到最高值。 按“查找最大值”按钮时,结果为:“[object HTMLInputElement]” 谢谢你的帮助! 以下是代码: <html> <head> <title>Max</title> <meta charset="utf-8"> <script type="text/javascript">
<html>
<head>
<title>Max</title>
<meta charset="utf-8">
<script type="text/javascript">
var sum = document.getElementsByName('addends');
function add() {
var x = document.getElementById('apendiks');
x.innerHTML+="<br/><input type='text' name='addends' size='7'>";
}
function finder() {
var max = sum[0];
for(i=0; i<sum.length;i++){
if(sum[i] > max){
max = sum[i];
}
}
document.getElementById('showMaxValue').innerHTML = max;
}
function gather() {
var total=0;
for(i=0; i < sum.length; i++){
total+=parseFloat(sum[i].value);
}
document.getElementById('score').innerHTML = total;
}
</script>
</head>
<body>
<p><input type="button" onclick="add()" value="Add a new box"> </p>
<p><input type="button" onclick="" value="-"> </p>
<div id="apendiks"></div>
<p><input type="button" onclick="gather()" value="Total sum"> </p>
<p>Score: <b id="score"></b></p>
<p><input type="button" onclick="finder()" value="Find max"> </p>
<p id="showMaxValue"></p>
</body>
</html>
马克斯
var sum=document.getElementsByName('addends');
函数add(){
var x=document.getElementById('apendiks');
x、 innerHTML+=“
”;
}
函数查找器(){
var max=总和[0];
对于(i=0;i最大值){
max=总和[i];
}
}
document.getElementById('showMaxValue')。innerHTML=max;
}
函数gather(){
var合计=0;
对于(i=0;i
分数:
var sum=document.getElementsByName('addends')
此行将为您提供节点列表,而不是数组
在finder
方法中,需要将其视为
function finder()
{
var max = paeseInt(sum[0].value) ;
for(i=0; i<sum.length;i++){
if(parseInt(sum[i].value) > max && !isNaN(sum[i].value)){ //assuming that strings should be ignored
max = parseInt(sum[i].value) ;
}
}
document.getElementById('showMaxValue').innerHTML = max;
}
函数查找器()
{
var max=paeseInt(和[0]。值);
对于(i=0;i max&&!isNaN(sum[i].value)){//假设应忽略字符串
max=parseInt(和[i].值);
}
}
document.getElementById('showMaxValue')。innerHTML=max;
}
使用.value
获取输入字段的值
马克斯
var sum=document.getElementsByName('addends');
函数add(){
var x=document.getElementById('apendiks');
x、 innerHTML+=“
”;
}
函数查找器(){
var max=sum[0]。值;
对于(i=0;i最大值){
max=和[i]。值;
}
}
document.getElementById('showMaxValue')。innerHTML=max;
}
函数gather(){
var合计=0;
对于(i=0;i
分数:
如果我将398 49 fdr
输入到文本字段“addends”
,该怎么办?Sum[]是一个html输入对象数组。我认为您正在尝试从输入中获取值,但是您正在相互比较输入元素,而不是它们包含的值。多个问题。。。请参见@charlietfl,但他在按下“查找最大值”按钮时得到的结果是:“[object HTMLInputElement]”如果我在文本字段中输入398-49fdr
加数,那么结果应该是什么?在这种情况下,什么输出将给出具有此输入值的解决方案-f0j381
?您认为……这里是一样的……比较字符串而不是数字sum[i]。无论用户输入是数字还是非数字,值都是字符串