[問題] 有關node.js的問題 (nodeschool)
各位JS大大先進們,
我最近在努力學習JS以及node.js
找了一些線上學習課程的網站來幫助自己入門,
可是在寫到其中一個作業時,
發現不斷地發生錯誤,
在嘗試理解問題後還是不太知道怎麼解決或是我錯在哪裡,
以下是我的程式碼以及官方給的解答,
請幫我看我錯在哪邊... 非常感謝大家的幫忙.
------------------------------------------------------------------------------
使用 http.get() 方法, 從命令列參數取得URL(網址)。
把每個網址的內容收集完整以後才顯示在終端機(標準輸出,stdout)上。
把資料以String的方式顯示就好,一個網址一行,不用顯示資料長度。
重點是必須以命令列參數的順序顯示這些資料。
這個是nodeschool提供的解答,
可以確實輸出資料.
https://github.com/workshopper/learnyounode/blob/master/exercises/juggling_async/solution/solution.js
我自己的寫法則是全部都直接蓋,
沒有另外寫成function.
但是用來儲存輸出資料的陣列卻是空的.
var http = require('http')
var bl = require('bl')
var results = []
var count = 0
function printResults () {
for (var i = 0; i < 1; i++)
console.log(results[i])
}
for (var index = 0; index < 1; index++) {
http.get(process.argv[2 + index], function (response) {
response.pipe(bl(function (err, data) {
if (err)
return console.error(err)
console.log(index)
results[index] = data.toString()
count++
if (count == 1)
printResults()
}))
})
}
自己嘗試debug的時候,
發現導入的index變數
在要填寫資料進入陣列時
"results[index] = data.toString()"
他的數值已經變成1,
於是資料填到不正確的長度上...
可否幫我檢查一下, 我這樣子更動程式碼所會造成的問題嗎?
非常感謝.
--
@@>
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.112.101.44
※ 文章網址: https://www.ptt.cc/bbs/Ajax/M.1445826727.A.3C7.html
推
10/26 11:52, , 1F
10/26 11:52, 1F
→
10/26 11:55, , 2F
10/26 11:55, 2F
→
10/26 11:55, , 3F
10/26 11:55, 3F
→
10/26 11:59, , 4F
10/26 11:59, 4F
→
10/26 12:01, , 5F
10/26 12:01, 5F
→
10/26 12:13, , 6F
10/26 12:13, 6F
Ajax 近期熱門文章
PTT數位生活區 即時熱門文章