作者KiroKu ()
看板Ajax
标题[问题] javascript 递回函式的问题
时间Fri Jul 27 01:35:31 2007
我写了个function他是用递回的方式在跑的
他自己会呼叫自己0~8次不等
最後是会自己停
但是我发现他最後几次少掉了
而且行为很奇怪
照理讲在第一层呼叫的时候 会产生8次
第1或2次的时候可能会再进到下一层
到最後下层执行完 也应该再把第一次那些後面的递回一样跑完才是
可是似乎没有....orz
我是用for去呼叫
for(k=0;k<2;k++){
}可是我除错时用alert()发现他的k变成3 4之类的
这难道式因为javascript的变数都是全域的关系吗?
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.229.9.65
1F:推 ephesians:如果人家回答你这问题 "似乎" 没答案,你高兴吗? 07/27 01:45
2F:推 KiroKu:@@为甚麽呢? 07/27 01:52
3F:→ ephesians:你的问题应该是程式写法造成,而不是语法本身的性质造成, 07/27 02:04
4F:→ ephesians:不妨把程式贴出来才看得比较明白. 07/27 02:05
5F:→ ephesians:前面是说,你问题想问什麽;你自己讲"似乎",也只好似乎了. 07/27 02:07
6F:推 KiroKu:我解决了 果然是全域的问题 07/27 17:17
7F:推 ephesians:凭什麽说是全域的问题? 你乾脆来改写JS的语言规格好了 07/27 18:15
8F:推 fillano:照规格,有Global, Function, Eval三种Execution Context 07/27 20:33