| 
                     | 
                    
                        主题:  求最大数的代码为什么错?
                     | 
                
            
                        
                
                    
                          sywh 
                        职务:普通成员 
                        等级:1 
                        金币:0.0 
                        发贴:66 
                        注册:2002/1/23 8:44:01 
                     | 
                    
                        
                            
                            #12002/3/10 12:11:38 
                            
                                我想编的是找最大数的过程,代码如下: a = new Array(23, 234, 2, 435, 245, 23, 45, 2, 45, 67, 687, 56); function max (a) {     var a;     var max1 = a.pop();     for (var i = a.length; i<=0; ) {         if (max1             max1 = a[i];         }         i--;     }     return max1; } trace (max (a)) 应该输出的是687呀,它为什么输出56?
                                
                                
                                
                             
                            
                            
                         
                     | 
                
                        
                
                    
                          turbine 
                        职务:普通成员 
                        等级:1 
                        金币:0.0 
                        发贴:10 
                        注册:2002/2/4 18:04:01 
                     | 
                    
                        
                            
                            #22002/3/10 12:24:02 
                            
                                i>=0 还有var a 没有用
                                
                                
                                
                             
                            
                            
                         
                     | 
                
                        
                
                    
                          金山羊 
                        职务:普通成员 
                        等级:4 
                        金币:10.0 
                        发贴:827 
                        注册:2002/1/6 14:44:13 
                     | 
                    
                        
                            
                            #32002/3/10 14:58:55 
                            
                                a = new Array(23, 234, 2, 435, 245, 23, 45, 2, 45, 67, 687, 56); function max (a) {     var max1 = a.pop();     for (var i = a.length ; i>=0; i--) {         if (max1             max1 = a[i];         }     }     return max1; } trace (max (a))
 
  //your judgement is wrong
                                
                                
                                
                             
                            
                            5d.cn FLASHDEP TECHNOLOGY SUPPORT JAVA/ACTIONSCRIPT/javascript CFML/JSP/COLDFUSION/FLASH REMOTING JRUN/COLDFUSIONMX FLASH/DREAMWEARER 
                         
                     | 
                
                        
                
                    
                          sywh 
                        职务:普通成员 
                        等级:1 
                        金币:0.0 
                        发贴:66 
                        注册:2002/1/23 8:44:01 
                     | 
                    
                        
                            
                            #42002/3/10 16:56:59 
                            
                                谢谢金山羊,可是我觉得咱俩写得都差不多呀,找了半天也找不出来到底哪儿出了毛病,能不能请金山羊说清楚些。    
                                
                                
                                
                             
                            
                            
                         
                     | 
                
                        
                
                    
                          金山羊 
                        职务:普通成员 
                        等级:4 
                        金币:10.0 
                        发贴:827 
                        注册:2002/1/6 14:44:13 
                     | 
                    
                        
                            
                            #52002/3/10 17:32:45 
                            
                                for (var i = a.length ; i>=0; i--) 
                                
                                
                                
                             
                            
                            5d.cn FLASHDEP TECHNOLOGY SUPPORT JAVA/ACTIONSCRIPT/javascript CFML/JSP/COLDFUSION/FLASH REMOTING JRUN/COLDFUSIONMX FLASH/DREAMWEARER 
                         
                     | 
                
                        
                
                    
                          东方楚楚 
                        职务:普通成员 
                        等级:1 
                        金币:0.0 
                        发贴:44 
                        注册:2000/10/25 1:32:58 
                     | 
                    
                        
                            
                            #62002/3/10 21:39:15 
                            
                                i--不应该出现在循环体内,而应放于判断体内,作为条件判断的修正。
  
                                
                                
                                
                             
                            
                            
                         
                     | 
                
                        
                
                    
                          金山羊 
                        职务:普通成员 
                        等级:4 
                        金币:10.0 
                        发贴:827 
                        注册:2002/1/6 14:44:13 
                     | 
                    
                        
                            
                            #72002/3/11 8:12:34 
                            
                                wrong you tried? It will be a infinite loop! find it problem!
                                
                                
                                
                             
                            
                            5d.cn FLASHDEP TECHNOLOGY SUPPORT JAVA/ACTIONSCRIPT/javascript CFML/JSP/COLDFUSION/FLASH REMOTING JRUN/COLDFUSIONMX FLASH/DREAMWEARER 
                         
                     | 
                
                        
                
                    
                          janlay 
                        职务:管理员 
                        等级:7 
                        金币:28.0 
                        发贴:7244 
                        注册:2003/11/27 18:07:11 
                     | 
                    
                        
                            
                            #82002/3/11 21:05:21 
                            
                                sywh在上个帖子中说  引用:  应该输出的是687呀,它为什么输出56? 
   i的值在不在for()中并不重要,你把它放在循环体最后,和放在for()中是一样的。 由于画蛇添足地加了一句: var a; 使得变量a取代了原来的array object, 所以a.length当然就为0了,这样,循环只执行了一次,因而你总是得到数组最后一个数   
                                
                                
                                
                             
                            
                            
                         
                     |