Javascript pro… v smyčka iteruje každou vlastností objektu.
Syntax
Syntaxe smyčky for… in je následující:
pro (klíč const v objektu)// tělo smyčky for… in
kde,
The klíč je proměnná použitá v každé iteraci.
The objekt je požadovaný objekt, ze kterého bude iterovat smyčku.
Dále projdeme několik příkladů k posílení konceptu a ukážeme vám, jak tento proces funguje.
Příklady
Nejprve vidíme nejjednodušší implementaci pro… v smyčka. V tomto příkladu nejprve předpokládáme objekt:
let obj =křestní jméno: „John“,
příjmení: "Doe"
A pak budeme iterovat objektem a konzolovat každou vlastnost pomocí pro… v smyčka.
for (const name in obj)řídicí panel.log (name + "=" + obj [name]);
Jak vidíte, pro… v smyčka iterovala skrz každou vlastnost obj objekt a vytiskli každou vlastnost v konzole, jak jsme si přáli.
Vestavěný je také Javascript hasOwnProperty () funkce. Můžeme provést hasOwnProperty () před provedením jakéhokoli úkolu v pro… v smyčka, jako je tato:
for (const name in obj)pokud (obj.hasOwnProperty (name))
řídicí panel.log (name + "=" + obj [name]);
Tato funkce se hodí, když potřebujete použít JSON nebo pro účely ladění.
Pokud nevíte, zda klíč obsahuje určité vlastnosti, můžete také použít pro… v syntaxe pro pole, stejně jako pro řetězce.
let arr = [23,24,25]for (const value in arr)
řídicí panel.log (hodnota + "=" + arr [hodnota]);
Podobně můžete tuto syntaxi použít také na řetězce.
pro (const char v str)
řídicí panel.log (char + "=" + str [char]);
Nedoporučuje se však používat pro… v smyčka pro pole a řetězce, protože pro pole a řetězce existují vyhrazené smyčky a funkce. Jako, pro ... nebo Array.protptyp.forEach () je pro pole pro lepší provádění stejných úkolů.
Závěr
V tomto článku jste se dozvěděli, jak pro… v smyčka funguje a jak pomáhá s JSON a laděním. Také jste se naučili používat pro… v smyčka s poli a řetězci, i když je tato smyčka vyhrazena a doporučena pro objekty. Doufám ale, že tento článek pomohl vašemu porozumění pro… v smyčka a její různé implementace. Chcete-li se dozvědět více o Javascriptu, najdete další články na linuxhint.com.