Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [JavaScript] Czekanie na wykonanie pętli, [Juqery]
asad
post 10.03.2014, 21:01:20
Post #1





Grupa: Zarejestrowani
Postów: 1
Pomógł: 0
Dołączył: 10.03.2014

Ostrzeżenie: (0%)
-----


Witam, Chciałbym zapytać w jaki sposób poczekać na wykonanie pętli each w jquery n.p
  1. $.each(dane, function(index,value) {$("#pojemnik").append(index);});
i dopiero, gdy wszystkie wartości zostaną dodane przez pętlę wykonywać jakieś działania np. do wszystkich wartości w #pojemnik dodać 2. Czy jest to w ogóle możliwe?

Ten post edytował asad 10.03.2014, 21:03:11
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 7)
kamil4u
post 10.03.2014, 21:32:24
Post #2





Grupa: Zarejestrowani
Postów: 2 350
Pomógł: 512
Dołączył: 4.01.2009
Skąd: Wrocław / Świdnica

Ostrzeżenie: (0%)
-----


JavaScript wykonuje instrukcję po instrukcji. Zatem nie ma czegoś takiego jak czekanie, aż zostaną wykonane instrukcje, one wykonują się jedna po drugiej: http://webroad.pl/javascript/746-synchroni...synchronicznosc

Czyli
[JAVASCRIPT] pobierz, plaintext
  1. $.each(dane, function(index,value) {$("#pojemnik").append(index);});
  2. /*W tym miejscu jest wszystko dodane*/
[JAVASCRIPT] pobierz, plaintext


Oznacza to, że możesz po prostu drugi raz zrobić pętlę - drugą pętlę, która służy do zupełnie innego celu.


--------------------
Go to the top of the page
+Quote Post
timon27
post 10.03.2014, 22:23:36
Post #3





Grupa: Zarejestrowani
Postów: 578
Pomógł: 69
Dołączył: 15.04.2007
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Cytat(kamil4u @ 10.03.2014, 21:32:24 ) *
JavaScript wykonuje instrukcję po instrukcji.

A czy istnieją języki które tak nie mają?
Go to the top of the page
+Quote Post
slashynsky
post 10.03.2014, 23:45:46
Post #4





Grupa: Zarejestrowani
Postów: 30
Pomógł: 7
Dołączył: 7.02.2014
Skąd: Łódź

Ostrzeżenie: (0%)
-----


http://www.w3schools.com/jquery/jquery_callback.asp
Go to the top of the page
+Quote Post
viking
post 11.03.2014, 08:57:24
Post #5





Grupa: Zarejestrowani
Postów: 6 378
Pomógł: 1116
Dołączył: 30.08.2006

Ostrzeżenie: (0%)
-----


https://api.jquery.com/category/deferred-object/


--------------------
Go to the top of the page
+Quote Post
kamil4u
post 11.03.2014, 10:41:10
Post #6





Grupa: Zarejestrowani
Postów: 2 350
Pomógł: 512
Dołączył: 4.01.2009
Skąd: Wrocław / Świdnica

Ostrzeżenie: (0%)
-----


Cytat
A czy istnieją języki które tak nie mają?

To był skrót myślowy.

Jak w JS ustawimy funkcję, która trwa 1s to następne instrukcje będą się wykonywały dopiero po 1s. Są języki, w których możesz pisać wątki i rozwiązać ten problem. W JS obejściem tego problemu jest AJAX.


--------------------
Go to the top of the page
+Quote Post
timon27
post 11.03.2014, 14:05:26
Post #7





Grupa: Zarejestrowani
Postów: 578
Pomógł: 69
Dołączył: 15.04.2007
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Cytat(kamil4u @ 11.03.2014, 10:41:10 ) *
To był skrót myślowy.


Nie nabijałem się smile.gif
Pytałem bo nigdy tego nie robiłem.
Myślę że posty wyżej mogą mi się przydać.
Go to the top of the page
+Quote Post
kamil4u
post 11.03.2014, 14:28:50
Post #8





Grupa: Zarejestrowani
Postów: 2 350
Pomógł: 512
Dołączył: 4.01.2009
Skąd: Wrocław / Świdnica

Ostrzeżenie: (0%)
-----


Cytat
Nie nabijałem się smile.gif
Pytałem bo nigdy tego nie robiłem.
Myślę że posty wyżej mogą mi się przydać.

Generalnie jeśli mamy kilkurdzeniowy procesor to można wykonywać kilka instrukcji na raz. A tak to oczywiście możemy zawsze wykonać jedną instrukcję. Mowa tu oczywiście o wykonywaniu przez komputer kodu binarnego( assembler ). Dobrze się tego można nauczyć programując mikrokontrolery.

Życie jest jednak prostsze. Mamy systemy operacyjne, które za nas odwalają całą robotę. W językach niższego poziomu, niż JS - np. C/C++ możemy w łatwy sposób zarządzać pracą rdzeni, tworzyć procesy czy wątki. Wszystko za nas wykonuje system operacyjny. Jeśli chcemy napisać aplikację, która w tyle będzie pobierać dane, a tak to wykonywała jakieś inne operacje to musimy tak naprawdę wykonywać wiele operacji na raz. W większości takich sytuacji korzystamy z wątków.

W JS nie da się tego tak napisać. Nie możemy jednocześnie robić dwóch operacji na raz. Ale ponieważ z biegiem czasu bardzo tego brakowało, głownie po to, żeby pobrać jakieś dane z serwera to wymyśli AJAX. Dzięki temu możemy asynchronicznie wykonywać pewne operacje. Do poczytania artykuł w moim pierwszym poście.

Pozdrawiam


--------------------
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 18.07.2025 - 02:17