torna alle lezioni

Memorizzare le date di lettura

importanza: 5

Abbiamo un array di messaggi come nel compito precedente. La situazione è simile.

let messages = [
  {text: "Hello", from: "John"},
  {text: "How goes?", from: "John"},
  {text: "See you soon", from: "Alice"}
];

Ora la domanda è: quale struttura di dati converrebbe utilizzare per memorizzare l’informazione: “quando è stato letto il messaggio?”.

Nel compito precedente la necessità era semplicemente di memorizzare la lettura del messaggio. Ora abbiamo bisogno di memorizzare anche la data; anche in questo caso, se il messaggio viene eliminato questa dovrebbe sparire.

Per memorizzare una data possiamo utilizzare WeakMap:

let messages = [
  {text: "Hello", from: "John"},
  {text: "How goes?", from: "John"},
  {text: "See you soon", from: "Alice"}
];

let readMap = new WeakMap();

readMap.set(messages[0], new Date(2017, 1, 1));
// Oggetto di tipo Date che studieremo più avanti