読者です 読者をやめる 読者になる 読者になる

牌語備忘録 -pygo

あくまでもメモです。なるべくオフィシャルの情報を参照してください。

牌語備忘録 -pygo

Javascript と Python でクロージャー使ったカウンタのメモ

Javascript Python

Javascript

Javascript01 (n++)
function counter() {
  var n = 1;
  return function() {
    return n++;
  };
};

var count = counter();
console.log(count());
console.log(count());
console.log(count());
console.log(count());
// 1
// 2
// 3
// 4
Javascript02 (++n)
function counter() {
  var n = 0;
  return function() {
    return ++n;
  };
};

var count = counter();
console.log(count());
console.log(count());
console.log(count());
console.log(count());
// 1
// 2
// 3
// 4

Python

def counter():
    n = [0]
    def inc():
        n[0] += 1
        return n[0]
    return inc

count = counter()
print(count())
print(count())
print(count())
print(count())
# 1
# 2
# 3
# 4