我試圖阻止我的for循環,當它等於某個輸入時,我能夠在函數外實現這一點。例如,假設我將輸入變量設置爲'not leak',我希望循環在數組命中'not'時停止,並將其添加到設置爲'leak'以輸出'not leak'的關鍵字變量。但是,當我嘗試將循環插入函數時,它停止了按預期方式工作,並會給出每個結果,直到輸入變量等於文本變量(我不希望它這樣做)。例如,它會輸出'不泄漏','不泄漏',這就是停止的地方,當我只是想要它輸出'不泄漏'把循環放在一個函數內
我已經嘗試了各種格式的功能,如設置函數作爲變量,給出函數參數,並將變量放在函數內部和外部,零進度。看起來,如果語句插入到函數中,它不會按預期工作。任何想法爲什麼以及如何解決這個問題?
下面是它在一個函數中的外觀。
function negKeyword() {
\t
var keyword = 'leak';
var input = 'not leak';
var text = '';
var arr = ['no', 'not', 'checked', ''];
\t
for (i = 0; i < arr.length; i++) {
\t
\t if (text == input) { break; } \t
\t text = arr[i] + ' ' + keyword;
\t console.log(text);
\t
\t }
\t
}
negKeyword();
下面是它的外觀功能
var keyword = 'leak';
var input = 'no leak';
var text = "";
var arr = ['no', 'not', 'checked', ''];
for (i = 0; i < arr.length; i++) {
\t
\t if (text===input) {break;}
\t text = arr[i] + ' ' + keyword;
\t
}
console.log(text);
它做同樣的事情裏面任何函數之外。你只是在不同的地方有'console.log'。也許你應該正確地縮進你的代碼,以便你能看到它。 – 4castle