Re: [問題] javascript 遞迴函式的問題
※ 引述《KiroKu ()》之銘言:
: 我寫了個function他是用遞迴的方式在跑的
: 他自己會呼叫自己0~8次不等
: 最後是會自己停
: 但是我發現他最後幾次少掉了
: 而且行為很奇怪
: 照理講在第一層呼叫的時候 會產生8次
: 第1或2次的時候可能會再進到下一層
: 到最後下層執行完 也應該再把第一次那些後面的遞迴一樣跑完才是
: 可是似乎沒有....orz
: 我是用for去呼叫
: for(k=0;k<2;k++){
: }可是我除錯時用alert()發現他的k變成3 4之類的
: 這難道式因為javascript的變數都是全域的關係嗎?
剛開始看到這問題,我的感覺是:
1.這問題描述的很模糊,你說它好像不會做,這是什麼意思?
難道你可以說,一個指定命令 var a = 5; 這行程式可能沒做正確的指定嗎?
2.你都沒有講講你的程式大概是怎麼寫的,函式內有哪些東西,函式外又有哪些東西.
就這樣子,你說程式跑得好像很怪.
除了你自己之外,誰知道你的問題是什麼?
這樣變成你只是在抱怨,而不是在發問.
3.行文中有二樣錯誤假設:(1)程式執行次數無故變動;(2)JS變數都是全域變數.
其實你的程式出問題,不是JavaScript程式語言本身有問題,
而是你怎麼寫這程式的問題.
所以提示你,如果人家回答你這問題,回答"似乎沒答案",你高不高興?
因為你沒在發問,只是自行猜測"似乎沒有做",那請問你想得到什麼答案?
要人家點頭說 "對,它本來就似乎不會做" 嗎?
更扯的是你早就假定答案是"變數都是全域變數",
後來你的論斷竟然是 "對,是全域的問題".
真是新發現啊!
全域變數,區域變數,本來有很重要的區別,現在突然沒有全域與區域的差別了...(驚)
你確定要用這樣的斷言誤導他人嗎?
你還是仔細看看你程式與變數的安排,確認之前的問題是在哪邊吧.
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.112.226.22
推
07/28 09:02, , 1F
07/28 09:02, 1F
→
07/28 09:03, , 2F
07/28 09:03, 2F
推
07/28 15:43, , 3F
07/28 15:43, 3F
→
07/28 15:44, , 4F
07/28 15:44, 4F
→
07/28 15:46, , 5F
07/28 15:46, 5F
推
07/29 12:28, , 6F
07/29 12:28, 6F
推
07/30 21:04, , 7F
07/30 21:04, 7F
→
07/30 21:06, , 8F
07/30 21:06, 8F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):
Ajax 近期熱門文章
PTT數位生活區 即時熱門文章
-1
12