我正在做一個簡單的遞歸節點來生成所有10個字符的字符串。 我在執行過程中發生內存泄漏。 代碼如下。 任何想法?節點javascript遞歸內存不足
我認爲它可能與console.log(word)行關聯。 沒有這條線,代碼似乎工作。 但是,如果將結果打印到屏幕上,我的最終目標是使用生成的單詞實現http請求。我試過沒有絲網印刷,它也會產生內存不足。
var char = [
'a',
'b',
'c',
'd',
'e',
'f',
'g',
'h',
'i',
'j',
'k',
'l',
'm',
'n',
'o',
'p',
'q',
'r',
's',
't',
'u',
'v',
'w',
'x',
'y',
'z',
' ',
'\''
];
function recurseWord(keyword){
if (keyword.length >= 10){
return null ;
}
else{
for (var index = 0 ; index < char.length ; ++index){
keyword = keyword + char [index];
console.log (keyword);
recurseWord (keyword) ;
keyword = keyword.substring(0, keyword.length-1);
}
}
return null ;
}
var keyword = "";
recurseWord(keyword);
我的快速數學告訴我有296萬億個組合。你確定要爲每個人提供網絡請求嗎? –
哼哼,這是相當多的;-)。我可能會限制爲幾個字符。另外,我想我會更新代碼以在請求結果爲負時停止遞歸。我的問題是一個普遍的問題,但據我所知;-) – Jeannot
其實,需要多長時間來耗盡內存?我運行你的代碼,它似乎到目前爲止工作(與console.log)。另外,理論上它應該可以正常工作。你最多隻有10個示波器。什麼版本/操作系統的節點? – Goblinlord