Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JS] Przeszukanie tablicy obiektów
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
Riggs
Wczoraj klepiąc trochę kodu trafiłem na mały problem. Otóż w JS mam tablicę z obiektami
var test = [
{id: 1, name: 'test'},
{id: 2, name: 'test'},
{id: 3, name: 'test'},
{id: 4, name: 'test'},
{id: 5, name: 'test'},
];
Oczywiście tablica jest dużo większa. Chodzi mi o to żeby zadać jakąś funckję która zwróci mi obiekt o id np 3. (może być w jQuery).

Dodatkowo np mam tablicę:
var instances = [];
instances[1] = {count: 0, opt: []};
instances[2] = {count: 0, opt: []};
instances[3] = {count: 0, opt: []};

Gdzie indeks tablicy jest id obiektu z tablicy test. Czy jest możliwość sprawdzenia czy klucz tablicy istnieje i ew modyfikowanie obiektu a jeśli klucz nie istnieje to spushowania takiego elementu do tablicy?
Crozin
Cytat
Chodzi mi o to żeby zadać jakąś funckję która zwróci mi obiekt o id np 3. (może być w jQuery).
[JAVASCRIPT] pobierz, plaintext
  1. var obj;
  2.  
  3. for (var i = 0; i < test.length; i++) {
  4. if (test[i].id === 3) {
  5. obj = test[i];
  6.  
  7. break;
  8. }
  9. }
  10.  
  11. alert(typeof obj === "undefined" ? "nie znaleziono" : "znaleziono, name: " + obj.name);
[JAVASCRIPT] pobierz, plaintext
?
Cytat
Dodatkowo np mam tablicę:
var instances = [];
instances[1] = {count: 0, opt: []};
instances[2] = {count: 0, opt: []};
instances[3] = {count: 0, opt: []};

Gdzie indeks tablicy jest id obiektu z tablicy test. Czy jest możliwość sprawdzenia czy klucz tablicy istnieje i ew modyfikowanie obiektu a jeśli klucz nie istnieje to spushowania takiego elementu do tablicy?
1. Zdajesz sobie sprawę z tego, że nawet jeżeli będziesz miał w tej tablicy tylko jeden obiekt o ID równym 2332 JS utworzy tablicę z 2333 elementami?
2.
[JAVASCRIPT] pobierz, plaintext
  1. if (typeof instances[123321] === "undefined") {
  2. instances[123321] = someObject;
  3. } else {
  4. instances[123321].count += 1;
  5. }
[JAVASCRIPT] pobierz, plaintext
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.