为什么这样做是错的,错在哪?这样返回的结果是undefined

来源:6-4 编程练习

vuepz

2019-08-18 15:54:57

http://img.mukewang.com/climg/5d59042a000140e905240330.jpg

写回答

2回答

好帮手慕码

2019-08-18

同学你好!
代码中问题可能在:这里应该是<,否则最后一项是undefined

http://img.mukewang.com/climg/5d591c6f0001368204630061.jpg

并且,逻辑是不对的,返回了数组中的最后一项。可以参考如下去进行比较:

定义数组中第一个数字,反复与第一个数字比较大小

http://img.mukewang.com/climg/5d591cad0001d3b806240414.jpg

效果:

http://img.mukewang.com/climg/5d591cf20001dffd04260058.jpg

http://img.mukewang.com/climg/5d591ced0001b79900660040.jpg

并且建议同学如果提问的话,建议粘贴代码在问答区进行提问,以便准确的查找问题哦~

如果帮助到了你,欢迎采纳,祝学习愉快~

1
huepz
h <!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="UTF-8" /> <title></title> </head> <body> <script> var arr = [2,4,1,-1,56,3,-7]; function min () { if (arguments.length == 0) return ; for (var i = 0;i<arguments.length;i ++) { var a = arguments[i]; if (i==0) { a=arguments[0]; }else { a=a<arguments[i] ? a : arguments[i]; } } return a; } document.write(min.apply(window,arr)); </script> </body> </html> 我的这个逻辑有些什么问题呢,希望老师详解一下,谢谢
h019-08-21
共2条回复

好帮手慕码

2019-08-21

同学你好!

代码中缺少一个{

http://img.mukewang.com/climg/5d5cfb790001205006380271.jpg

如果是<=为undefined的原因:

http://img.mukewang.com/climg/5d5cfc540001bb2807170178.jpg

http://img.mukewang.com/climg/5d5cfcaf0001fdb902190046.jpg

http://img.mukewang.com/climg/5d5cfca70001ab8804210300.jpg

逻辑错误的地方,如果最小的数字在数组中间,输出的还是最后一个数字-7:

http://img.mukewang.com/climg/5d5cffaa0001241811860122.jpg

所以同学可以参考回复一种的修改方式即可实现。

如果帮助到了你,欢迎采纳,祝学习愉快~


0

0 学习 · 14456 问题

查看课程