怎样得到数组中最大的数,和它在数组中的位置?

lostnull 2003-01-04 09:07:23
var xxstr=[12,3,-4,0];
...全文
42 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
saucer 2003-01-05
  • 打赏
  • 举报
回复
from MSDN documentation:

function array_max( ){
var i, max = this[0];
for (i = 1; i < this.length; i++)
{
if (max < this[i])
max = this[i];
}
return max;
}
Array.prototype.max = array_max;
var x = new Array(1, 2, 3, 4, 5, 6);
var y = x.max( );
qiushuiwuhen 2003-01-05
  • 打赏
  • 举报
回复
如果要它在数组中的位置
<script>
function array_max( ){
var i, max = this[0],j=0;
for (i = 1; i < this.length; i++)
{
if (max < this[i]){max = this[i];j=i;}
}
return j;
}
Array.prototype.max = array_max;
var x =[12,3,-4,0];
var y = x.max( );
alert(y);
alert(x);
</script>
qiushuiwuhen 2003-01-05
  • 打赏
  • 举报
回复
<script>
function array_max( ){
return this.concat().sort(function(a,b){return b-a})[0];
}
Array.prototype.max = array_max;
var x =[12,3,-4,0];
var y = x.max( );
alert(y);
alert(x);
</script>
逍遥小贼 2003-01-05
  • 打赏
  • 举报
回复
嗬嗬,这是最简单的循环排序法,一个一个往后检查,发现一个比当前最大值大的,就将值赋给变量max,依次往后,直到最后一个,就可以得到你要的效果
这种排序有很多的算法,你可以找来研究,自己根据算法来编写相应的程序来实践:)
blues-star 2003-01-05
  • 打赏
  • 举报
回复
这个不需要排序,这个只是一个遍历而已。

87,917

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧