javascriptの戻り値でn++としたときにはじめにゼロになる理由がわからない。
javascriptの勉強をしており、書籍を見ていると、下のようなパターンのコードがでてきます。
関数の中に関数があるパターンです。
function counter(){
var n = 0;
return{
count: function(){return n++;},
reset: function(){n = 0;}
};
}
var c = counter(), d = counter();
console.log(c.count());//0
console.log(c.count());//1
こちらのコードのcountメソッドを呼び出すと最初になぜか0になります。
n++としているので最初に呼び出しときに1になるのでは?と思ってしまいます。
なぜ0になるのか教えていただけますでしょうか。