27625 shaares
Le moteur JavaScript V8 optimise l’accès aux propriétés grâce aux classes cachées, qui décrivent la structure des objets, et aux caches inline, qui mémorisent les structures rencontrées. Lorsque trop de formes différentes passent par le même accès, celui-ci devient mégamorphique et peut ralentir nettement : dans le benchmark présenté, passer de quatre à cinq formes double environ le temps de lecture. L’article montre comment l’ordre des propriétés, les champs conditionnels et l’opérateur delete influencent ces optimisations. Conseil : conserver des structures cohérentes et mesurer avant d’optimiser.