2011-12-16 14 views
0

私はこのようにjavascriptを使用したことはありませんが、削除ボタンが押された回数を把握したいと思います。ページが最初にロードされるとき、私は "値"を0に設定したいと思っています。ここに私が持っていることは明らかにうまくいかないことです、私は隠れ変数を作成し、その方法を追跡するルートに行きたくありませんでした。助けてくれてありがとう。あなたが初期設定されていません - 削除JavaScriptが画像の何回削除されたかをカウントしています

var incement = new MenuAction().SetDeletePictureCount(); 

使用に関する

スクリプト

var deletePictureCount; 
function MenuAction() { 

} 
MenuAction.prototype = { 
    GetDeletePictureCount: function() { 
     if (deletePictureCount == null || deletePictureCount < 0) { return 0; } 
     return deletePictureCount; 
    }, 
    SetDeletePictureCount: function() { 
     deletePictureCount++; 
    } 
}; 

使用量は、バック

var deletedPiccount = new MenuAction().GetDeletePictureCount(); 
+3

deletePictureCountここのような0に初期化する必要があります。確かに、グローバルな 'deletePictureCount' varを' 0'に初期化する必要があります。さもなければ、 'deletePictureCount ++'はどういう意味がありますか? – Triptych

答えて

1

はのは、あなたのスクリプトを見てみましょう。

var deletePictureCount; - より良いあなたが前に「取得」の前に「設定」を使用gon'na場合、それは初期値です設定します。

if (deletePictureCount == null || deletePictureCount < 0) { return 0; } - この用語は不必要です:あなたのdeletePictureCountがあなたのスクリプトを通してどの程度正確に負の値を得ることができなかったのか分かりませんでした。

代わりにif(deletePictureCount) return deletePictureCount;を使用してください。

それは

var deletePictureCount = 0; 
function MenuAction() { 

} 
MenuAction.prototype = { 
    GetDeletePictureCount: function() { 
     if (deletePictureCount) return deletePictureCount; //if deletePictureCount is not null or 0 - return it's value; 
     return 0; // else return 0; 
    }, 
    SetDeletePictureCount: function() { 
     deletePictureCount++; 
    } 
}; 
2

が私には少し奇妙に見える値を取得しようとしたとき値を取得/設定するオブジェクトの2つのインスタンスを作成していますか?戻り値をincrementに設定していますが、その関数で値を返さない。

deletePictureCount++を使用してそれを行うのはなぜですか?

関連する問題