推 Ayukawayen: 你可以用array處理掉就好嗎? 03/12 20:21
推 diabloevagto: 不能這樣寫 03/12 20:25
推 qazwsx9006: 用一個object 來存? 03/12 21:20
→ Hevak: 1234這種有順序的用陣列去array.push就好... 03/12 21:44
→ Hevak: 名稱真的很重要的時候開一個變數用物件存+1 03/12 21:45
→ InfinityGate: 沒人會這樣寫吧 用物件或陣列 03/12 22:22
→ InfinityGate: 不過硬要這樣在外面宣告那些變數操作的話 03/12 22:23
→ InfinityGate: 可以 window["num"+i] = ... 03/12 22:24
改成利用array的方式
var num;
for (var i = 1; i < 5; i++) {
num[i] = document.getElementById("i").value;
}
不過仍然不行@@
Uncaught TypeError: Cannot read property 'value' of null
推 Ayukawayen: getElementById(i) //不要引號 那樣會是字串"i" 03/13 23:27
→ froce: 剛好最近看到,不過個人還是建議你用個object去存。 03/14 17:34
→ froce: Debug的時候,要看全部的變數簡單多了,又沒有影響其他全域 03/14 17:37
→ froce: 變數的危險。 03/14 17:37
推 Gold740716: eval('num' + i + '= document.getElementById("i")) 03/14 20:03
推 chen5252: 你回問那樣的寫法是找出Id=“I”的東西,而不是找出變數 03/15 18:47
→ chen5252: i耶 03/15 18:47
→ chen5252: *回文 03/15 18:48
→ chen5252: 所以他找不到東西,你後面又接.value就會出錯 03/15 18:50
好喔! 後來有發現不能用"i"
改成i 可是還是不行
最後發現問題似乎是
我用宣告錯誤了
var num;
改成
var num = new array 就可以了@@
謝謝大家!
※ 編輯: wavek (122.118.199.69), 03/17/2018 11:40:19
推 peanut97: 或用 let a = [];也行 03/19 12:23