これはCodecademyのJavascriptのレッスン「あなたの名前のためのテキスト検索」からのものです。以下の作品:これらの違いは何ですか?1つのクラッシュを引き起こすForループ?
しかしvar text = "My name is Zorak. Everyone calls me Zorak.";
var myName = "Zorak";
var hits = [];
for (i=0; i < text.length; i++){
if (text[i] === myName[0]) {
for (var j = i; j < i + myName.length; j++) {
hits.push(text[j])
}
}
}
、私はj + myName.length
とi + myName.length
を置き換え、それがクラッシュです。フルで:私はこれを実行すると
var text = "My name is Zorak. Everyone calls me Zorak.";
var myName = "Zorak";
var hits = [];
for (i=0; i < text.length; i++){
if (text[i] === myName[0]) {
for (var j = i; j < j + myName.length; j++) {
hits.push(text[j])
}
}
}
私は私がループ内にconsole.logマーカーを配置するとき、それはちょうどことを除いて、無限ループで立ち往生だと信じるように私を導いた、すべてのエラーを取得していませんよそれは何も印刷されません。
なぜクラッシュするのですか?
あなたはその変更から何を期待していますか?無作為に変更するコードは、決して賢明な結果につながることはまれです... –
無限ループです。 – jsejcksn
@AlexeiLevenkov私はそれがクラッシュしないように期待しています。 「j
stephen