慕用7262582
2017-10-31 10:52
<script type="text/javascript">
function sortNum(a,b) {
return a - b;
//升序,如降序,把“a - b”该成“b - a”
}
var myarr = new Array("80","16","50","6","100","1");
document.write(myarr + "<br>");
document.write(myarr.sort(sortNum));
</script>
return详解,谁知道?
你上面的问题是数组排序里面的return a-b 的具体运行过程吧;
return a-b是比较a和b,a比b大的话则把 a 排在 b 前面,这样经过若干次比较,就会排序完成。
下面的代码你运行一下打开控制台就可以看到每次两个数比较的结果了。
<!DOCTYPE html> <html> <head> <title> 事件</title> <script type="text/javascript"> var i = 0; var myarr = new Array("80","16","50","6","100","1"); myarr.sort(function(a,b){ i++; console.log('第'+i+'次排序',a,b); return a-b; }); </script> </head> <body> </body> </html>
return不是必须要返回一个值,return表示中止当前函数的运行,并将操作权返回给调用者或者是结束当前函数的执行,可以看看return 、break 、continue 的区别
JavaScript进阶篇
468061 学习 · 21891 问题
相似问题