de-vraag
  • Pytania
  • Tagi
  • Użytkownicy
Powiadomienia
Nagrody
Rejestracja
Po zarejestrowaniu się, będziesz otrzymywać powiadomienia o odpowiedziach i komentarzach do swoich pytań.
Zaloguj się
Brak tłumaczeń pasujących do Twojego wyszukiwania Jeśli masz już konto, zaloguj się, aby sprawdzić nowe powiadomienia.
Za dodane pytania, odpowiedzi i komentarze przewidziane są nagrody.
Więcej
Źródło
Edytuj
 Tanmoy
Tanmoy
Question

Jak mogę zapętlić lub wyliczyć obiekt JavaScript?

Mam obiekt JavaScript jak poniżej:

var p = {
    "p1": "value1",
    "p2": "value2",
    "p3": "value3"
};

Teraz chcę zapętlić wszystkie elementy p (p1, p2, p3...) I uzyskać ich klucze i wartości. Jak mogę to zrobić?

Mogę zmodyfikować obiekt JavaScript, jeśli to konieczne. Moim ostatecznym celem jest zapętlenie kilku par klucz-wartość i jeśli to możliwe, chcę uniknąć używania eval.

2688 2009-03-26T06:01:47+00:00 3
Luca Kiebel
Luca Kiebel
Edytowane pytanie 13. września 2018 в 10:26
Programowanie
javascript
loops
each
To pytanie ma 1 odpowiedź w języku angielskim, aby je przeczytać zaloguj się na swoje konto.
Solution / Answer
 levik
levik
26. marca 2009 в 6:12
2009-03-26T06:12:13+00:00
Więcej
Źródło
Edytuj
#8927663

Możesz użyć pętli for-in, jak pokazali inni. Jednak musisz również upewnić się, że klucz, który otrzymujesz, jest rzeczywistą właściwością obiektu, a nie pochodzi z prototypu.

Tutaj znajduje się snippet:

var p = {
    "p1": "value1",
    "p2": "value2",
    "p3": "value3"
};

for (var key in p) {
    if (p.hasOwnProperty(key)) {
        console.log(key + " -> " + p[key]);
    }
}

For-of z alternatywą Object.keys():

var p = {
    0: "value1",
    "b": "value2",
    key: "value3"
};

for (var key of Object.keys(p)) {
    console.log(key + " -> " + p[key])
}

Zwróć uwagę na użycie for-of zamiast for-in, jeśli nie jest to użyte, zwróci niezdefiniowane na nazwanych właściwościach, a Object.keys() zapewnia użycie tylko własnych właściwości obiektu'bez całego prototypu właściwości łańcucha

Salem Megiddo
Salem Megiddo
Edytowana odpowiedź 30. października 2019 в 2:46
4144
0
 Bryan
Bryan
26. marca 2009 в 6:05
2009-03-26T06:05:01+00:00
Więcej
Źródło
Edytuj
#8927662

Możesz po prostu iterować nad nim jak:

for (var key in p) {
  alert(p[key]);
}

Zauważ, że key nie przyjmie wartości właściwości, jest to tylko wartość indeksu.

 billynoah
billynoah
Edytowana odpowiedź 9. października 2018 в 3:11
47
0
Richard Levasseur
Richard Levasseur
26. marca 2009 в 6:04
2009-03-26T06:04:10+00:00
Więcej
Źródło
Edytuj
#8927661
for(key in p) {
  alert( p[key] );
}

Uwaga: możesz to zrobić nad tablicami, ale będziesz też iterował nad długością i innymi właściwościami.

 Kristian
Kristian
Edytowana odpowiedź 3. listopada 2012 в 9:46
21
0
Dodaj pytanie
Kategorie
Wszystkie
Technologia
Kultura / Rekreacja
Życie / Sztuka
Nauka
Profesjonalny
Biznes
Użytkownicy
Wszystkie
Nowy
Popularny
1
Zuxriddin Muydinov
Zarejestrowany 13 godzin temu
2
Денис Анненский
Zarejestrowany 2 dni temu
3
365
Zarejestrowany 1 tydzień temu
4
True Image
Zarejestrowany 1 tydzień temu
5
archana agarwal
Zarejestrowany 1 tydzień temu
BG
DA
DE
EL
ES
ET
FR
ID
IT
JA
KO
LT
LV
NL
PL
PT
RU
ZH
© de-vraag 2022
Źródło
stackoverflow.com
na podstawie licencji cc by-sa 3.0 z przypisaniem