Gibt es eine Möglichkeit, die Längeneigenschaft aller neu erstellten Arrays in schreibgeschützt zu ändern? Angenommen, ich habe ein Array
var arr = [1, 2, 3];
Das Ändern der Eigenschaft length in schreibgeschützt ist einfach.
Object.defineProperty(arr, "length", { writable: false });
Jetzt kann die Länge dieses Arrays nicht mehr geändert werden. Aber auf diese Weise müsste ich diesen Code für jedes Array schreiben.
Keine dieser Arbeiten:
Object.defineProperty(Array.prototype, "length", { writable: false });
Object.defineProperty(Array, "length", { writable: false });
Ist es irgendwie möglich, ohne es manuell für jedes einzelne Array zu ändern?
Antworten:
0 für die Antwort № 1Warum gruppieren Sie diese Arrays nicht in Klassen und setzen Sie diese bestimmte Klasse einfach auf schreibgeschützt?