0

グローバル変数を javascript .each 関数に渡し、反復中にその値を保持したいと考えています。

これがコードです。

 var year = false;
 page.posts.each(function(item, year){
   year = true;
 });

年はまだ間違っています。year はどのようにして反復でその値を保持できますか?

4

4 に答える 4

1

関数パラメーターとグローバル変数の間で名前が競合しています。関数のパラメーター名は実行されるコードに近いため、JavaScriptが変数名を調べて意味を調べると、最初にパラメーター名が見つかるため、それが設定されます。

windowグローバル変数を明示的に設定したい場合は、アクセスする必要があります。

window.year = true; // explicit global
于 2013-08-09T12:10:47.330 に答える
0

競合を避けるために変数 year の名前を変更するか、単にグローバル変数を変更したい場合は window.year = true を使用する必要があります

page.posts.each(function(item, year){
   year = true;  
});
于 2013-08-09T12:30:32.823 に答える
0

変数名に競合があります。

var year = false;
 page.posts.each(function(item, yr){
   year = true;
 });
于 2013-08-09T12:12:11.803 に答える
0

ウィンドウドキュメントに貼り付けてみてください。

 window.year = false;
 page.posts.each(function(item, year){
   year = true;
 });
于 2013-08-09T12:12:26.980 に答える