`forEach`函數中的`return`關鍵字有何意義?
P粉964682904
2023-08-21 17:58:20
<p><br /></p>
<pre class="brush:js;toolbar:false;">$('button').click(function () {
[1, 2, 3, 4, 5].forEach(function (n) {
if (n == 3) {
// 在這裡應該中斷並且不會彈出任何內容
return false
}
alert(n)
})
})</pre>
<pre class="brush:html;toolbar:false;"><script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"> ;</script>
<button>點我</button></pre>
<p><br /></p>
<p>我的問題是:為什麼即使我呼叫了<code>return</code>,它仍然會彈出下一個數字?就像:<em>忽略下面的程式碼並繼續下一個元素</em></p>
返回語句
return
會退出目前函數,但迴圈會繼續進行,所以你會得到「下一個」跳過if
語句並彈出4的項...如果你需要停止循環,你應該使用普通的
for
循環,如下:你可以在這裡閱讀更多關於js中的break和continue:http://www.w3schools.com/js/js_break.asp##
來自Mozilla開發者網路: