Bu derste tekrar gelebilirim.
Bir yarış hakkında konuşmayı sürdürüyoruz ve dizi tekrarlamaya odaklanacağız.
Bu noktaya kadar, bir dizinin nasıl bir dizi oluşturabildiğimizi gördük ve ne istediğimizi saklayabileceğimiz sadece
bir veri listesi oldu.
Rakamları ve dizeleri ve boolean değerlerini başka dizileri depolayabildiğimiz gibi depolayabiliriz, ancak fikir şu ki
biz orada şeyler sakladık ve biz de şeyleri aldık ve bana ilk öğeyi vermek
gibi son maddeyi verdik. push ve pop ve shift ve n shift kullandık.
dizinin her parçasına nasıl erişebildiğimizi veya bir dizideki her öğeye bazı kodlar yapabileceğimizi görmedik.
Ancak bu noktaya kadar, bir
Ve dizi yinelemesinin, bir dizi üzerinden yineleme yapan bir listeyi yinelemeye atıfta bulunduğu şey budur.
Temel olarak bu dizinin içinden geçme ve her bir öğeye veya her öğeye bir şeyler yapma.
Bu yüzden, birkaç gerçek dünya uygulaması size dizi tekrarının gerçek örneklerini vereceğim.
Ortak bir örnek, yorumlar ve yayınlardır.
Yani bir blog, ister tumblr ister reddit olsun tumblr'ın gerçekten yorum yapmadığını, ancak okumayı
ve okumayı düşünelim diye düşünüyoruz.
Post'un bir sürü yorum var.
Bu yorumlar bir dizide saklanır ve bu açıklamaların tümünü göstermek için bazı kod
döngüleri o dizinin üzerinde 10000 yorumla potansiyel olarak tekrarlanır ve her biri için her seferinde
tüm içeriği yapar ve biraz yapar müttefik ya da ne olursa olsun, onu
yaşlanan yorumlar bir döngü içinde üretilen bir paragraf yapar.
Irak'ta tekrar edersek, yorumlarla da çok benzer bir şey yapacağız.
Daha sonra bu derste Noad'tan bahsettik ve bunu gelişme aşamasında tekrar ifade edeceğiz, her yorumu basmak
için bir dizi yorum üzerinde yineleme yapmak için bir döngü kullanacağız.
Liste yapmaya karar verdiğinizde de dizi yinelemesi kullanacağız.
Yani zaten basit bir liste yapmaya başladık ama aslında malmsey'e SS'yi eklediğimizde, her biri
yapmak ve her biri için küçük bir div yapmak için bir döngü kullanacağız ve sonra her birini yapacağız.
Aynı şey, bir blog uygulaması yaptığınızda, bir döngü kullanacağız ve blog dizimizdeki her blog için bir
şeyler yapacağız.
Sayfada küçük bir blog yazısı yapacağız.
Yani radyasyon gerçekten önemli.
Muhtemelen dizilerle yaptığımız en yaygın şeydir.
Verilerin bir listesi var.
Genellikle, o listedeki her şeye bir şeyler yapmak istersin.
Aksi halde, yalnızca ilk şeyle çalışmak istiyorsanız veya yedinci madde her zaman belki
bir dizi kullanmamalısınız.
Belki sadece öğeyi tek başına saklarsınız.
Yani burada üç hedefimiz var.
Birincisi, bir dizinin yinelemesi için bir for döngüsü nasıl kullanabileceğinizi göstermek istiyor ve sonra
size her biri için adlandırılan yepyeni bir şey göstereceğim.
Dolayısıyla daha önce dört döngü gördünüz, ancak bir foreach yepyeni bir şey. Bence heyecan verici.
Gerçekten de gerçekten faydalıdır.
Ve sonra yapacağımız son şey, ikisini karşılaştırmak.
Bu yüzden, burada başlayalım Bir döngü kullanarak bir döngüye bir döngü kullanma örneği var.
Bu nedenle, kırmızı turuncu sarı ve yeşil dizgiler için dört öğeye sahip bir dizi renk var.
Şimdi eğer bunu konuşmadıysak, her birini basmak istersem tekrar tekrarlama yapmadık.
Bunu buraya kopyalayacağım.
Yapmam gereken şey böyle bir şey.
sonra da 1 ve 2 için aynı şeyi yapın.
Bu günlük rengi sıfır iptal edin ve
Sonunda 3 bize yeşil veriyor ve konuklar zararlı görünüyor ancak bu dizide on bin renk ya da
10000 yorum varsa ya da bir postayı okursak olabildiğince kötü bir yer yok.
Açıkçası, bu bizim için gerçekten işimize yaramaz.
Kuru kod olmadığı gerçeğinden bahsetmiyorum bile.
Her zaman tekrar ediyoruz.
Dolayısıyla, bu işlemi otomatikleştirmek için bir döngü kullanıyoruz çünkü burada yaptığımız işlem aynı.
Değişen tek şey burada sayı 8.
Ve her seferinde sadece bir tane ekliyoruz.
Yani dizinin başlangıcından başlıyoruz ve sonuna kadar yolumuza devam edeceğiz, böylece
bunu bir for döngüsü ile burada görebilirsiniz.
Dolayısıyla, FOR döngüsü gözümüzdeki değişkeni sıfırdan başlar, çünkü daima dizideki ilk dizin olur.
Ve sonra her seferinde ilmek ekliyoruz ve devam ediyoruz.
Vay.
Renk dizisinin uzunluğundan daha az.
Yani bu dizinin uzunluğunun dört olduğunu unutmayın.
Dört saatten az süreyle, çünkü dört renk tanımlanmadığından asla dörtlü olmamalıyım.
Dolayısıyla bu türden bir döngü gerçekten çok yaygın.
Öyleyse, gözlerimizin, renksiz dışarda sıfır gözle eşit olması için burada yazmam gerekiyor ve bu şekilde
yapmak zorunda değilsiniz.
Ayrıca, iki renkten daha az veya eşit yapabilirsiniz.
Amanda Swon biraz daha uzundur, böylece çoğu insan bu şekilde yazmaz ama aynı
şeydir.
Artı artı gibi kapat ve parantezlerimizi açın.
Ve burada, log hakkında danışmanlık yapmak yerine, alarm renkleri uyarılarını yapalım.
Ben sadece bundan hoşlandım.
Aslında bu, böyle yeni bir for döngüsü kullanmamızın bizi görmesinin tamamı olmamalı, ancak kavramlar kadar
burada yeni bir şey yok.
Sadece bir döngü alarak, sıfırdan başlayarak bir sayı gördüğünüzü ve devam edip başka
bir sayı söyleyeceğiz ve daha sonra yaptığımız tek şey bu rakamın bir diziye takılmasıdır.
O halde bunu deneyelim.
Umarım bunu okuyabilirsiniz, sonuçta ben kırmızı turuncu sarı yeşil buluyorum.
Ve aynı şeyi konsey yerine Lague ile yerine getirelim.
Ve işte gidiyoruz.
Demek ki, aramış olduğumuz yorumlar gibi birşeyle aslında ne yapardık.
Ve sonra daha az soru sordum ve bir şeyi günlüğe kaydetme işlemini iptal etmeden iptal ettikten
sonra, make comment adlı bir işleve sahip olabilir ya da onun gibi bir şey yapabilir ve tüm iChat'ı
onun Alpher'e bir yorum yaparak sorumlu yapardı ve şimdi yapıyoruz yorumlar dizisindeki her öğeye.
TAMAM.
Böylece for döngüsünü kullanabiliriz.
Ayrıca geriye doğru gidebiliriz, böylece dizinin sonunda başlarız ve sıfıra gelene kadar devam edeceğiz.
Fakat bu biraz daha az yaygındır, ancak foreach adlı bir dizi aracılığıyla yinelemenin başka
bir yolu vardır.
Ve bence, foreach kullanımı çok daha güzel, daha basit ve daha günümüzde daha yaygın.
Şimdi her biri için her zaman Javascript'in bir parçası olmuştur.
Dolayısıyla, bir döngü veya düz eski bir döngü dizisi aracılığıyla döngüye göre karşılaştırıldığında nispeten yeni.
Sanırım 2009'da çıktı.
buna değer bir şey için bir dizi üzerinden dönmenin en iyi yol olduğunu düşünüyorum.
Öyleyse öğreticiler olacak ve başvuruda bulunmayan bazı eski kitaplar var ancak
Burada göreceğiniz gibi, başında aşmak için biraz engel var.
Yeni bir şey, aslında bir işlevi başka bir işleve geçirdiğimiz için biraz korkutucu.
Bu yüzden sadece bir an açıklayacağım.
Ancak, bir kere sözdizimini öğrenip alışmaya başladıktan sonra geçtikten sonra,
parantez içinde parantezler kullanmanız gerektiğinde ve başlangıçta bir kerede başlaması gereken
bir miktar bagaj var demektir. Bununla rahat ederseniz, for döngüsünü kullanmaktan
daha kolaydır.
Daha hızlıdır ve bunu her yerde göreceksiniz ve dengeli döngüler kullanmak için elimden gelenin en iyisini
yapacağım foreach size her iki yönden de vurmak için kullanın, böylece her ikisine de alışacaksınız.
Ama sana söyleyeceğim şimdi her birime kısmen giriyorum.
Öyleyse işte burada.
Her bir dizide tanımlanan her yöntem için bir yöntem.
Bu, dizi prototipi denilen şeylerin bir parçasını oluşturur; bu yöntemlerin tümü itme, pop ve
vardiya ve nakliye gibi unsurların hepsi burada yaşıyor.
Peki, burada gördüğünüz gibi, bir argüman olarak bir işlev alır.
Bu nedenle, her bir deve maliyeti için, coloreds'in yorum noktasının dizinin adı ne olursa olsun,
dizi yazıyoruz.
Ve sonra bir işleve geçiyoruz.
Yani aslında böyle görünmüyor.
Normalde en çok göreceğiniz şey burada sahip olduğumuz gibi isimsiz bir işlevdir.
Dolayısıyla, işlevi olan bütün bu şeyleri iletirsiniz ve daha sonra bu işlev, dizideki her bir
öğe için çağrılır.
Bu yüzden size bir örnek göstereceğim.
Bu kodu alacağız.
Bu diziyi kopyalayın ve ardından önce ekranı temizleyin.
Böylece, renk dizisine sahibiz ve her biri için renkler yazıyoruz.
Ve her içeri girdiğimde her element üzerinde çağrılacağım ve tipik olarak burada nano işlev bozukluğuna
sahip olacağım ve ona herhangi bir argüman vermeyeceğim.
Bu argümanın ne olduğunu açıklayacağım.
Yani her birine renk verin.
Ve sonra sadece boş fonksiyon.
Şimdilik, içinde her biri için sürekli su kaydı yapacağız, öyle böyle.
Bir dakika ayırın, ne olacağını umduğunuz hakkında düşünün, dizideki her öğe için
işleve neden olduğunu ve entera vuracağım dedim.
Ve ben bunu unutuyorum, burada çok iyi video yapmaz, ancak Chrome tüm konsey günlüklerini
bir satır halinde sıkıştıracaktır.
Ama kırmızı için bir numara var.
Bu yüzden, dizideki her bir öğe için dört kez bir tekrar ediyor.
için daha kolay bir yol, aslında bir uyarı olur ve üç ve dört uyarıları uyarmaları için bir mektup alırlar.
Bunu görmek
Bu yüzden dizideki her bir öğe için yapıyor.
Ancak sadece bir dizi için bazı kod x sayı veya uzunluk eksi bir kere çalıştırmak
bu kadar yararlı değildir.
Genellikle bir şekilde bu dizideki verileri kullanmak istiyoruz.
Şimdi, her zaman bir şey kaydetmek isteyip istemediğinizi, ancak her bir öğeye
bir puan ekleyip eklemediğini, ancak bu verileri genellikle keyfi olarak uyarı yapmak
yerine bir şekilde etkileşime girmek veya manipüle etmek isteyip istemediğimizi belirtmek isteriz.
Bu verileri elde etme şeklimiz, bu işlevin ne olursa olsun fonksiyonumuza isimsiz bir
fonksiyon olup olmadığının adlandırılmış bir fonksiyon fonksiyonu ifadesi olmasıdır.
Önemli değil.
Ancak bu işlev ne olursa olsun onu bir argüman haricinde ele alalım, bu yüzden burada bunları tekrar yazmamıza izin verin
ve tanımladığımız diğer işlevler gibi istediğimiz her şey çağrılabilir.
Bu yüzden, bazı durumlarda mantıklı olmadıkça, kodunuzda asla kullanmayacağınız köpekleri seviyorum gibi
korkunç bir adla başlayacağım.
Birçoğu düşünemiyorum, ama ne yapacağım da köpeklerden birini alıp yazdıracak.
Köpekleri her defasında seviyorum, böylece her biri için oturum açma.
Artı köpekleri severim ve içeri girerim ve sarı yem içindeki yem portakalı içinde okumuş olduğumuz yem biter ve
sonunda her yeşil için içine girdiğimizi göreceksin.
Bu yüzden, köpekler sevdiğimi, foreach döngüleri boyunca ya da döngü yaparken o dizideki her bir
öğenin değerini elinde tutuyor.
Bu nedenle, her öğe için bu işlevi burada tüm fonksiyonu olarak adlandırıyor.
Sadece çağırıyor olmakla kalmıyor, kırmızıya, sonra turuncuya, ardından da sarıya ve daha sonra
bu fonksiyona yeşil renk geçiyor.
Öyleyse size alternatif bir sözdizimi göstereceğim.
Gerçekten de, alternatif bir sözdizimi değil, bir işlevi tanımlamanın ve onu geçirmenin başka bir yolu.
Yani diğer tıp işlevlerine benzer.
Baskı rengi diyeceğim ve yapacağı her şey Renkli bir argümanı almak ve daha sonra
burada sabit bir günlüğü yapacağım ve başlamak için yalnızca bir satır yıldız atalım ve bu satırı kopyalayacağım
ve o zaman aşağıda renk yazmaz.
Ve sonra tekrar bir parça anahat.
TAMAM.
Dolayısıyla basit bir işlevi bulmamız gerekiyor.
Umarım bu noktada gözden geçirme, Renk adlı bir argüman alır ve yalnızca islevi tanımladım çünkü
Hiçbir şey olmaz isabet olur.
Ama şimdi buna baskı rengi diyelim ve mor yapalım.
Açıkçası en iyi rengi yıldızlar Mor yıldız alıyorum.
Ve işlerim aslında bir şey döndürmüyor, ancak üç satır basar çünkü inceleme gibi
undefined olsun.
tek şey, her biri için dizilim olan renklerdir ve daha sonra burada bir bütün işlevi yazmamaktır.
Tamam, böylece her biri için bu baskı rengini dizideki her bir öğede çalıştırmak için kullanabilirim ve yapmam gereken
Tek yapmanız gereken baskı rengidir ve bu parantezleri oraya koyarsam parantez koymuyorum, bu
gerçekten önemli bir not.
Hemen o işlevi arayacağım.
Javascript'in işlevi gördüğünde onu parantezlerle takip ettiğini hatırlayın.
Bu yüzden, her biri için geçirdiğim önemli değil. İstediğimizden önce
çağırılacaktır. Aslında yapmak istediğim şey, her biri için söylediğimiz parantez olmadan baskı rengini geçmektir.
İşte başlıyoruz.
İşte işlevi.
Beni sonra armanı istiyorum.
Döngüdüğünüzde ve dizideki her bir öğeye onu aramanızı istiyorum.
Öyleyse ileri sararsak ne olacak?
Eh, ilk önce girmeme izin verin, burada başlarken mor renk alacağımızı göreceksiniz, kırmızı turuncu sarı ve
yeşil.
Sahnelerin arkasında ne oluyor da, her biri baskı rengi alıyor ve baskı
rengi kırmızı baskı rengi turuncu yayınlıyor olması gerçekten de öyle görünmüyor olması dışında.
Bu baskı renk renkleri Pi'ye 0 ve daha sonra güzel renkler bir renkle başlayan gibi görünüyor.
Bu yüzden, baskı renkler fonksiyonumuzu alıyor ve aslında bizim için çağırıyor.
Bu yüzden ne çağırmamız gerektiğini söylüyoruz ve öğelerde bunu seslendireceğiz.
Her biri için gerçekten güzel çünkü I ile çalışmamız gerekmediğinden, bir for
döngüsünün sözdizimini yazmamız gerekmiyor ve kodumuzun içerisindeki veya eriştiğimiz renklere erişmek zorunda değilsiniz ne olursa olsun buna biz
burada diyoruz.
Bu durumda renklendirin, ancak iyi bir isim olmayan köpekleri sevdiğim gibi gösterdiğimi
hatırlayın; ancak istediğim her şey olabilir ve umarım renklerden daha fazlasını ifade eder.
Her ikisi için de daha popüler olan her biri için her ikisini de kullanabiliriz ve onu tercih ederim, ancak size
dengeli bir bakış açısı sağlamak için elimden gelenin en iyisini yaparım ya da en azından ikisini de görmeye zorlarsınız.
Ve burada döngü yolunun iki yolunun bir karşılaştırması var ve kısa bir süre
size göstereceğim while döngüsünü kullanabileceğimiz iki yolu var.
Renkler için aynı şeyi yapabiliriz.
Tek yapmamız gereken bir değişkeni tanımlamak.
Diyelim ki saymak ve başlangıçta sıfıra eşittir.
Ve sonra sayım, her biri için olduğu gibi, renklendirici boyuttan daha az olurken yapacağız.
Yani sadece for döngüsü gibi.
Ve sonra bunun yerine unuttuğumuz sayımı artırmak zorundayız ve daha sonra sabit
bir alt log renk sayımı yapabiliriz.
Dolayısıyla, while döngüsü genelde for döngüsü ile karşılaştırıldığında olduğu gibi biraz daha sözdizimi.
Önce bir değişken tanımlamalıyız ve sonra döngü içinde artırmamız gerekiyor ve sonunda kırmızı turuncu
sarı yeşille bitiyoruz.
Dolayısıyla while döngüsünü kullanabilirsiniz, ancak kimsenin bunu yapmadığını göremezsiniz gerçekten nadiren enderdir.
Neredeyse daima bir for döngüsü veya her biri için.
Ve gittikçe artan bir şekilde, her biri için her zaman önemlidir.
Her birinin nerede olmadığı, bazı şeylerin tarayıcıyla ilgili bazı maddelerle HMLC Ss ve
Javascript öğeleriyle birlikte işaret ettiğinden emin olduğumuz bazı durumlar var, burada her şeyi bir
araya getirdiğimizde işlerle uğraştığımız anlar olacak. dizilere benzeyen, ancak aslında değiller.
Ve gerçekten kafa karıştırıcı.
Ancak bunun farkında olduğunuzdan emin olacağım ve her seferinde bunu kullanamayacağız.
Dolayısıyla bir for döngüsünü nasıl yazdığınızı ve her biri için aynı şeyi nasıl yaptığınızı hatırlamak her zaman iyidir.
Bu kodun size burada gösterdiğini gösterdiği şey, isterseniz okumak için biraz zaman ayırın.
Temel farklar, for döngüsünde bir sayı ile uğraştığımız gerçeğidir.
Bu yüzden sıfırdan bir dizinin sonuna kadar bir sayıdan gidiyoruz ve biz aslında dizi renklerine
erişmek için bu numarayı kullanıyoruz.
Ben önümüzde soyutlanan bir önyargıda bulunuyorum.
Bu yüzden uğraştığımız tek şey, arkadaşınıza gönderilen yorumlardan bağımsız olarak geçici bir yer tutucu renk
veya madde veya şey yarattık ve bunu bir işlev yerine kullandığınız bir addır.
tekrar kullanmak istediğiniz bir işlev olmadığı sürece anonim bir işlev görürsünüz ve onu kodunuzun başka
bölümleri olarak adlandırmak istersiniz; bunu tanımlayabilirsiniz, bunu foreach'ın dışında bir ad verebilirsiniz .
En yaygın olanı, çoğunlukla daha sonra
TAMAM.
Bu yüzden çok şey kapladık.
Onlar gerçekten önemli şeyler döngüler artı işlevleri artı dizileri şeylerin şimdi bir araya gelecek tür var.
Yine, ders boyunca bir döngü yazmanın her iki yolunu da görmek için elimden gelenin en iyisini yapacağım
ve bir sonraki adımda 30 saniyeden fazla sürmemesi gereken çok kısa bir çok çabamız var.