javascript - Získání délky 'pojmenovaného' pole?
Nejsem si jistý, jak se tomu říká, ale tím myslím toto:
array["water"] = 50;
array["fire"] = 30;
délka by zde měla být 2
jak mohu zjistit, kolik atributů mám v poli? array.length nefunguje =( Zkoušel jsem různé věci a mám pocit, že mi uniká něco opravdu jednoduchého..
Děkuji za vaši pomoc
Odpověď č. 1
Můžete použít Object.keys() k získání pole klíčů a potom je spočítat:
Object.keys(array).length
Nebo, pokud cílíte na ECMAScript 3 nebo jinak nemáte Object.keys(), můžete klíče spočítat ručně:
var length = 0;
for (var key in array) {
if (array.hasOwnProperty(key)) {
++length;
}
}
Existuje však několik okrajových případů s tímto přístupem, v závislosti na prohlížečích, které cílíte, takže použití polyfillu od Mozilly pro Object.keys() by mohlo být dobrou volbou.
