Holen und Setzen von Stil für Zellen

Formatierung von Zellen

Es gibt zwei Möglichkeiten, eine Zelle zu formatieren, wie unten dargestellt.

Verwendung von Stil

Mit folgendem Code wird für jede Zelle beim Formatieren ein Style-Objekt initialisiert. Wenn viele Zellen formatiert werden, verbraucht dies viel Speicher, da das Style-Objekt groß ist. Diese Style-Objekte werden erst freigegeben, wenn die Methode Workbook.save aufgerufen wird.

JavaScript

cell.style.font.isBold = true;

Verwendung von Stil

Der erste Ansatz ist einfach und unkompliziert, warum haben wir also den zweiten Ansatz hinzugefügt?

Wir haben den zweiten Ansatz hinzugefügt, um den Speicherverbrauch zu optimieren. Nach der Verwendung der Cell.style-Eigenschaft zum Abrufen eines Style-Objekts können Sie dieses ändern und wieder zuweisen, indem Sie die Cell.style-Eigenschaft auf diese Zelle setzen. Dieses Style-Objekt wird nicht gespeichert und der JavaScript-Garbage-Collector wird es entfernen, wenn keine Referenz darauf besteht.

Beim Zuweisen der Cell.style-Eigenschaft wird das Style-Objekt nicht für jede Zelle gespeichert. Stattdessen vergleichen wir dieses Style-Objekt mit einem internen Style-Objekt-Pool, um zu prüfen, ob es wiederverwendet werden kann. Nur Style-Objekte, die sich von den bestehenden unterscheiden, werden für jedes Workbook beibehalten. Das bedeutet, dass für jede Excel-Datei nur einige hundert Style-Objekte vorhanden sind, anstatt Tausende. Für jede Zelle wird nur ein Index zum Style-Objekt-Pool gespeichert.

JavaScript

let style = cell.style;

style.font.isBold = true;

cell.style = style;

Erweiterte Themen