1: user=> (def some-account {:number :any-number :balance :any-balance :bank :any-bank})
2: #'user/some-account
3: user=> (contains? some-account :bank)
4: true
5: user=> (assoc some-account :owner :any-owner)
6: {:owner :any-owner, :number :any-number, :balance :any-balance, :bank :any-bank}
7: user=> (contains? some-account :owner)
8: false
9: user=> (def some-account (assoc some-account :owner :any-owner))
10: #'user/some-account
11: user=> (contains? some-account :owner)
12: true
13: user=> (dissoc some-account :owner)
14: {:number :any-number, :balance :any-balance, :bank :any-bank}
15: user=> (contains? some-account :owner)
16: true
Quelqu'un peut-il expliquer ce code?Quelqu'un peut-il expliquer ce code?
Pourquoi, après (assoc some-account :owner :any-owner)
, est-ce que (contains? some-account :owner)
renvoie false
?
Pourquoi, seulement après (def some-account (assoc some-account :owner :any-owner))
(contains? some-account :owner)
renvoie true
? Pourquoi, après (dissoc some-account :owner)
, est-ce que (contains? some-account :owner)
renvoie true
?
J'ai essayé de dire (def some-account (assoc some-account :owner :any-owner))
à l'instinct. Mais pourquoi cela fonctionne-t-il de cette façon?
bonne introduction dans le codage propre :) – Belun