2017-08-16 6 views
0

一見普通のコードのために、[Uncaught SyntaxError:Unexpected identifier]という非常に奇妙な構文エラーが発生しています。私は他のブロックの1行目の後に何かを書く場合は、エラーを取得ちょっとしたコメント行のための奇妙な構文エラー

..

if (classlist.length == 0) {  
     lastClickCatID = -1; 
} 
else { 
    lastClickCatID = +classlist.value.split('-')[1]; 
    // **Getting error if I write anything here, even for comments like this** 
} 

私は(それらの間のスペースで)コメントに二つの単語を使用する場合は、エラーを取得します。もちろん、基本的なコンソールログでさえ、JSステートメントにはエラーが発生します。

また、コメントアウトされている次のコードではconsole.log行のエラーを取得して(第四行を:console.log-「UNDO」):

// Push this data into the undo array 
undo.push([lastClickDivID, lastClickCol, lastClickRow, lastClickCatID, nextClickCatID]); 

//console.log("UNDO", undo[0][0], undo[0][1], undo[0][2], undo[0][3], undo[0][4]); // *Getting error if I include this line* 
console.log(undo.pop()); 

でエラーを取得しますか、コメントタグなし。しかし、私は行全体を削除する場合、それは正常に動作します。変数のにconsole.logを行うための

nextClickCatID = +id2; 

再び取得エラー:

は、私は別のラインを持っています。しかし、私が '+'を削除して次の 'nextClickCatID = id2; '

また、この関数内でこのような多くの奇妙なエラーが発生します(それらを含めると長すぎます)。一見普通のコードのためにこれらのようなエラーが発生する理由は何ですか?

+0

あなたのコードのより完全な例を表示することができますか、質問のスニペットにあるエラーの理想的な例を表示できますか? –

+0

なぜ変数の前に+記号がありますか? –

+1

@N。 Ivanov - +記号はそれらをintに解析します。完全に削除したり、parseIntを使用してもエラーが発生します。 – user3001859

答えて

0

私はそれを解決しました。 jqueryドキュメントの準備関数で()と中括弧の間のスペースを削除すると、それは不思議なことに機能しました。それは(括弧の間にスペースで)同じ構造で細かい前にすべてのこのしばらく働いていた - 私はそれを追加したい

$(function(){ // with no space between the parentheses and the curly brackets 

$(function() { 

に...から変更しました。しかし、突然特定の機能で今日エラーを出すことに決めました。誰がなぜこのようなことが起きたのかを明確にすることができれば、それは依然として非常に重要です。