Vidíte to protože index je řetězec; 15. prvek, který přidáte, má index '15', nikoli číslo 15; a při porovnání řetězců je '9' vyšší než '15'. Takže last
zobrazuje nejvyšší řetězec hodnota, která je stále '9'. Jak říká @Koen, toto je dokumentované chování
:
kde 'nejvyšší' a 'nejnižší' jsou založeny na porovnání řetězců .
To nemá nic společného s počtem počet prvky tam jsou (což je jasně 15); ovlivněno je pouze chování hodnoty indexu.
Pokud máte více prvků, uvidíte last
hodnota se změní, když překročíte 89, protože '90' je vyšší hodnota než '9' a '91' je vyšší než '90'; ale když minete 99, zůstane tam, dokud nedosáhnete 900. A tak dále.