JavaScript programlama eğitimi. Yeni başlayanlar için JavaScript - Basit örnekler

Çok sayıda istekle bir dizi çalıştırın javascript dersleri. Koruyan bir şekilde yapılandırılırsanız, JS, JS, HTML ve CSS hakkında temel bilgilere sahip olmanız gerektiği anlamına gelir, çünkü bu bir temel olduğundan, neler hakkında konuşacağınızı anlamanız zordur.

Bizim tarafımızdan, anlaşılabilir bir dili açıklamaya, hayattan gerçek örnekler hakkında göstermeye çalışacağım, çünkü her şey karşılaştırıldığında geliyor.

Javascript veya nasıl anlaşılır, web geliştirme sırasında hangi amaç için gereklidir!

Herkesin somut olduğu bir dünyada yaşıyoruz, kafamıza gelen fikirleri uyguluyoruz. Çeşitli tekniklerle hareket eden evler, araba inşa ediyoruz. Yani, gerçek dünyada yapabileceğimiz şey, HTML ile karşılaştırıldığında, bir yapı materyali, her şeyin tutacağı ve ne zaman cSS yardımı Bu dünyayı yapıyoruz, onu kendilerini görmek istedikleri için rengarenk hale getiriyoruz.

Muhtemelen, HTML ve CSS'nin bizi çevreleyen olup olmadığını merak ediyorsunuz, peki JavaScript Nedir? Dünyamızda kendisini tezahür ettiği yer.

Basitçe, film Gary Lots'ın örneğini açıklayacağını düşünüyorum, benden birçoğunuzun baktığını ve neden bahsettiğimizi anladım. Filmin betiğine göre, yeteneklere sahip olan Gary'nin bir sihirbaz olduğunu ve bunun içindeki bir sihirli değnek olduğunu biliyoruz. Ona, kendisine benzersiz hale getirmek için bilgiye sahip olduğu gibi bir seviye, böyle bir seviye yaratma fırsatı veren sihir değnekiydi.

Javascript bir sihirli değnekHer web geliştiricisi olan, ancak yaratabileceğiniz sihir, yalnızca sahip olduğu geliştiricinin bilgisine bağlıdır. Ustalaşmış olanlar bu dilSihirbazlar ve kıvırcık harikalardır.


Javascript dili Bileşenleri HTML ve CSS olmadan dayanılmaz. Birçok programcı, bir web sayfasının "katmanları" oluşturan üç dilden bahseder: HTML, CSS ve JavaScript.

Html HyperText Markup'ın ilk dili - Metin, görüntü diğer elemanları gibi sayfanın içeriğini açıkça düzenleyen yapısal katmanlar sağlar.

İkinci, CSS. (Basamaklı stil sayfaları) formu güzel dekorasyon, HTML içeriği görünümü.

Ve üçüncü Javascript. - Davranışsal katmanlar ekleyin, web sayfasını canlandıran, etkileşimli hale getirin, yani ziyaretçilerle etkileşime geçmek için öğeleri oluşturur.


Sonuç olarak, JavaScript diline hakim olmak için, hem HTML hem de CSS hakkında iyi bir fikriniz olmalı.

Programlama, basit ölümcül için erişilemeyen inanılmaz sihir görünebilir. Ancak, kavramlarının çoğu anlamak zor değildir. Javascript, acemi programcılarla ilgili olarak oldukça kolaydır, ancak yine de, HTML veya CSS'den daha zordur, bu nedenle Dersler dizisi çerçevesinde, programlamanın temel kavramlarına hakim olacağız ve bunları komut dosyaları yazarken uygulayabilirsiniz. Javascript.

Yeni sembollerle tanışacaksınız () ,, , (),!, Yeni kelimelerin (var, , başkalarsa) tanımını öğrenin, noktalama işaretlerinin kurallarını ve dilin sözdizimini ve tüm bunların sihirlerini yaratmak için analiz edeceğiz.

Malzeme hazırlanan Denis yakıldı, yorumlarınızı yazın ve bu malzemeyi arkadaşlarınızla paylaştığınızdan emin olun.

  • Aktar

Bugün yayınladığımız çeviriye olan malzeme, JavaScript'in temellerine adanmıştır ve acemi programcılar için tasarlanmıştır. Temel JS tasarımlarında küçük bir referans kitabı olarak görülebilir. Burada, özellikle, veri tipi sistemi, değişkenler, diziler, özellikler, nesnelerin prototipleri ve dilin diğer bazı özellikleri hakkında konuşalım.

İlkel Veri Türleri

Javascript aşağıdaki ilkel veri türlerine sahiptir: numara, boolean, string, undefined, null. Hemen, ilkel veri türleriyle çalışırken, örneğin dize edebi ile çalışırken, açık bir dönüşüm bile yapmadık, yöntemlerine ve özelliklerine erişebiliriz. Gerçek şu ki, bu tür işlemleri yapmaya çalışırken, edepiyetler otomatik olarak uygun bir nesne sargısı ile donatılır.

▍ Sayfa

JavaScript'in yalnızca bir tür sayısına sahip - bunlar yüzen bir noktayla çift doğruluk sayılarıdır. Bu, bazı ifadeleri aritmetik olarak yanlış hesaplama sonuçlarına yol açar. JS'de 0.1 + 0.2 ifadesinin değerinin 0,3'e eşit olmadığını zaten bilebilirsiniz. Aynı zamanda, tamsayılarla çalışırken, bu tür sorunlar gözlenmedi, yani 1 + 2 \u003d\u003d\u003d 3.

Javascript, sayısal değerler için bir nesne sargısı olan bir sayı nesnesine sahiptir. Numara nesneleri, Var A \u003d Numara (10) Tip komutunu kullanarak oluşturulabilir veya yukarıda açıklanan sistemin otomatik davranışına güvenebilirsiniz. Bu, özellikle, sayısal edebiyatlara uygulanan numaralarda depolanan yöntemleri aramanıza izin verir:

(123) .Tostring (); // "123" (1.23) .tofixed (1); //"1.2 "
Diğer değer türlerini sayısal bir türde dönüştürmek için tasarlanmış global fonksiyonlar vardır. Bu, bu durumda türlerin dönüşümünü gerçekleştiren geleneksel bir fonksiyon olarak hareket eden parseint (), ayrışkanı () ve sayı () tasarımıdır:

Parseint ("1") // 1 Parseint ("Metin") // Nan Parsefat ("1.234") //1.234 Sayı ("1") // 1 sayı ("1.234") //1.234
Numaralı işlem sırasında, bir numara olmayan bir şeyi ortaya çıkarırsa (bazı hesaplamalar sırasında veya numaraya hiçbir şey dönüştürmeye çalışırken), JavaScript bir hata vermeyecek, ancak Nan olarak benzer bir işlemin sonucunu sunacak ( A numarası değil, numara değil). Nan değerinin kullanılıp kullanılmadığını kontrol etmek için, ISNAN () işlevini kullanabilirsiniz.

Aritmetik işlemler JS tanıdık çalışıyor, ancak + operatörün sayıların ilavesini yapabileceği gerçeğine ve dizgelerin birleştirilmesine dikkat etmek gerekir.

1 + 1 //2 "1" + "1" //"11" 1 + "1" //"11"

▍ inme

Javascript'teki satırlar Unicode karakter dizileridir. Dize değişmezleri, içine yerleştirilecek metni girerek, çift (") veya tek (" ") alıntılarda girin. Daha önce de belirtildiği gibi, string edebi ile çalışırken, karşılık gelen nesne sargısına güvenebiliriz, bunlar arasında birçok yararlı yöntem olan, bunlar arasında - alt dizin (), indexoof (), Concat ().

"Metin" .Substring (1,3) // ex "metin" .indexof ("x") // 2 "Metin" .concat ("End") // Metin Sonu
Diğer ilkel değerler, immutabelinler gibi satırlar. Örneğin, Concat () yöntemi mevcut dizeyi değiştirmez ve yenisini oluşturur.

▍Logical Değerler

JS'deki mantıksal veri türü iki değerle temsil edilir - Doğru ve Yanlış. Dil, çeşitli değerleri otomatik olarak mantıksal veri türüne dönüştürebilir. Yani, yanlış, yanlış mantıksal değere ek olarak, boş, tanımsız, "" (boş dize), 0 ve NAN. Herhangi bir nesneyi içeren her şey gerçek değerlerdir. Devam etmekte mantıksal İşlemler Doğru olarak kabul edilen her şey true'ye dönüştürülür ve yanlış kabul edilen her şey Yanlış'a dönüştürülür. Aşağıdaki örneğe bir göz atın. Yukarıdaki prensiplere göre, boş dize yanlış yönlendirilecektir ve bu kodun konsoldaki yürütülmesinin bir sonucu olarak, bunun hattı yanlıştır.

Metin \u003d ""; İf (metin) (konsol.log ("bu doğru");) başka (konsol.log ("bu yanlış");)

Nesneler

Nesneler, bir çift anahtar değerinden oluşan dinamik yapılardır. Değerler ilkel veri türlerine sahip olabilir, nesneler veya işlevler olabilir.

Nesnelerin Nesneyi Değerleme Sözdizimini Kullanarak Yaratmak En Kolaydır:

Let obj \u003d (Mesaj: "Bir mesaj", dosomething: işlevi () ()))
Nesnenin özellikleri, herhangi bir zamanda, okuma, ekleme, düzenleme ve silme olabilir. Bu nasıl yapılır:

  • Okuma Özellikleri: Object.Name, Nesne.
  • Verileri özelliklere kaydedin (Var olmayan özellik mevcut değilse, belirtilen tuşa sahip yeni bir özellik eklenir): Object.Name \u003d Değer, Nesne \u003d Değer.
  • Özellikleri Sil: Sil nesnesi.Name, Nesneyi sil.
İşte bazı örnekler:

Let obj \u003d (); // Boş bir nesne oluşturma obj.message \u003d "Bir mesaj"; // yeni bir emlak ekleme ob.message \u003d "Yeni bir mesaj"; // Nesneyi Düzenleme Nesneyi Sil.Message özellikleri; // mülkü sil
Dildeki nesneler Hash tabloları şeklinde uygulanır. Object.create komutunu kullanarak basit bir karma tablosu oluşturabilirsiniz (NULL):

Fransızca \u003d Object.Create (NULL); Fransız ["evet"] \u003d "oui"; Fransızca ["hayır"] \u003d "" olmayan "; Fransızca ["evet"]; // "oui"
Nesnenin değişmez yapılması gerekiyorsa, Object.Freeze () komutunu kullanabilirsiniz.

Nesnenin tüm özelliklerini numaralandırmak için, Object.Keys () komutunu kullanabilirsiniz:

Fonksiyon logproperty (ad) (Console.log (ad); // özellik adı konsol.log (obj); // özellik değeri) nesne.keys (obj) .Foreach (logproperty);

▍ İlkel tiplerin ve nesnelerin değerlerini değiştirin

İçin pratik iş İlkel değerlerle, zaten, onları nesneler olmasa da, özellikleri ve yöntemleri olan nesneler olarak algılamaktı. İlkel değerler değişmez, nesnelerin iç yapısı değişebilir.

Değişkenler

Javascript'te değişkenler var, izin ve kont anahtar kelimeleri kullanılarak ilan edilebilir.

Var anahtar kelimesini kullanırken, bir değişken ilan edebilirsiniz ve gerekirse belirli bir değerle başlatmak için. Değişken başlatılmazsa, değeri tanımlanmamıştır. Var anahtar sözcüğü kullanılarak bildirilen değişkenler işlevsel bir kapsam vardır.

Let anahtar kelime Var'a çok benzer, fark, anahtar kelime ile bildirilen değişkenlerin bir blok kapsamına sahip olmasıdır.

Görünürlüğün blok kapsamı ayrıca, bu tür değişkenlerin değerlerinin değiştirilemediği, "Sabitler" olarak adlandırılacağı verilen Const Anahtar Kelimesi kullanılarak bildirilen değişkenlere sahiptir. Kullanımı ile ilan edilen değişkenin değerini "donduran" Const Anahtar Kelimesi, Object.Freeze () yöntemi, "donma" nesneleriyle karşılaştırılabilir.

Değişken herhangi bir fonksiyonun dışında ilan edilirse, kapsamı geneldir.

Dizi

JavaScript dizileri nesneler kullanılarak uygulanır. Sonuç olarak, dizilerden bahsetmek, aslında dizilere benzer nesneleri tartışırız. Dizinlerini kullanarak dizinin unsurlarıyla birlikte çalışabilirsiniz. Sayısal dizinler dizelere dönüştürülür ve dizilerin değerlerine erişmek için isimler olarak kullanılır. Örneğin, ARR türünün tasarımı ARR'nin ["1"] tasarımına benzer, diğeri de aynı değere erişim sağlayacaktır: arr \u003d\u003d\u003d arr ["1"]. Yukarıda belirtilenlere göre, basit bir dizi Let Arr \u003d ["a" komut, B "," C "], aşağıdaki gibi görünüyor:

("0": "A", "1": "B", "2": "C")
Dizinin elemanlarını silme komutunu kullanarak, içinde "delikler" bırakır. Bu sorunu önlemek için, Splice () komutunu kullanabilirsiniz, ancak yavaş çalışır, çünkü öğeyi çıkardıktan sonra, dizinin kalan elemanlarını hareket ettirir, aslında, solun başlangıcına kaydırır, .

ARR \u003d ["A", "B", "C"]; Arr sil; Console.log (arr); // ["a", boş, "c"] konsol.log (arr.length); // 3.
Dizilerin yöntemleri, bu tür veri yapılarının yığın ve sıralar olarak uygulanmasını kolaylaştırır:

// yığın yığın \u003d; stack.push (1); // stack.push (2); // last \u003d stack.pop (); // console.log (son); // 2 // Queue Queue \u003d; Queue.Push (1); // queue.push (2); // ilk önce \u003d queue.shift (); // console.log (önce); // bir

Fonksiyonlar

JavaScript'teki işlevler nesnelerdir. İşlevler, nesnelerde veya dizilerde depolanan değişkenlere atanabilir, argümanlar biçimindeki diğer fonksiyonlara iletilebilir ve diğer fonksiyonlardan döndürülebilir.

İşlevleri bildirmenin üç yolu vardır:

  • İşlev Beyanı veya İşlev Ekstresi).
  • Fonksiyonel etkiler olarak da adlandırılan işlevsel ifadeleri (fonksiyon ekspresyonu) kullanılması (çalışma değişmez).
  • Çekim fonksiyonları sözdizimini kullanarak (ok işlevi).

▍ Klasik reklam fonksiyonu

Bu yaklaşımla fonksiyon ilanına göre, aşağıdaki kurallar geçerlidir:
  • Deklarasyon satır işlevindeki ilk anahtar kelime işlevidir.
  • İşlevler bir isim atamalıdır.
  • İşlev, bildirilen görünürlük kapsamının üst kısmındaki fonksiyon ilanını kaldırma mekanizması ile yapılmadan önce yapılan kodda kullanılabilir.
İşte klasik reklam fonksiyon listesinin nasıl görünüyor:

Fonksiyon dosomething () ()

▍ İşlevsel ifadeler

İşlevsel ifadeleri kullanırken, aşağıdakileri göz önünde bulundurmanız gerekir:
  • Function anahtar sözcüğü artık özellik satır fonksiyonundaki ilk kelime değil.
  • Bir işlev için bir adın varlığı isteğe bağlıdır. Hem isimsiz hem de adlandırılmış işlevsel ifadeleri kullanmak mümkündür.
  • Arama komutları Bu tür fonksiyonlar reklamlarının komutlarını izlemelidir.
  • Bu özellik, Duyuru Sözdizimini kullanarak hemen sonra başlatılabilir (hemen işlevsel ifade olarak adlandırılan).
İşlevsel ifade şöyle görünür:

Dosomething \u003d işlev () () ()

▍ Germe fonksiyonları

Ok işlevleri, aslında, adsız işlevsel ifadeler oluşturmak için "sözdizim şekeri" olarak kabul edilebilir. Bu tür fonksiyonların bu ve tartışmaların kendi varlıkları olmadığı belirtilmelidir. Ok işlevinin duyurusu şöyle görünür:

Dosomething \u003d () \u003d\u003e () için

Fonksiyonları aramak için promosyonlar

Fonksiyonlar çeşitli şekillerde çağrılabilir.

Normal fonksiyon çağrısı

Dosomething (argümanlar)

Bir nesne yöntemi olarak arama işlevi

TheObject.Dosomething (argümanlar) theObject ["dosomething"] (argümanlar)

Bir tasarımcı şeklinde arama işlevi

Yeni dosomething (argümanlar)

Uygula () yöntemini kullanarak bir işlevi aramak

Dosomething.Apply (theObject,) dosomething.call (theObject, argümanlar)

Bind () yöntemini kullanarak bir fonksiyon çağırmak

Dosomethingwithobject \u003d dosomething.bind (theObject); dosomethingwithobject ();
Fonksiyonlar, ilan edildiğinde belirtilen parametre sayısından büyük veya daha az sayıda argümanla çağrılabilir. "Aşırı" fonksiyonun çalışması sırasında, argümanlar basitçe göz ardı edilecektir (fonksiyonun onlara erişmesine rağmen), eksik parametreler tanımsız alacaktır.

İşlevlerin iki sahte parametreye sahiptir: bu ve argümanlar.

▍ düğün bu

Bunun anahtar sözcüğü bir fonksiyon bağlamıdır. Belirtildiği değer, fonksiyonun nasıl sonuçlandığına bağlıdır. İşlevi çağırma yöntemine bağlı olarak bunun anahtar sözcüğünü budur (kod örnekleriyle, burada kullanılan tasarımlar yukarıda açıklanmıştır):
  • Normal fonksiyon çağrısı - pencere / tanımsız.
  • Bir nesne yöntemi olarak arama işlevi - theObject.
  • Bir tasarımcı şeklinde bir işlevi çağırmak - yeni bir nesne.
  • Uygula () yöntemini kullanarak bir işlevi çağırmak - theObject.
  • Bind () yöntemini kullanarak bir işlevi çağırmak - theObject.

▍ düğün sözcük argümanları

Argümanlar anahtar sözcüğü, bir işlevi çağırırken kullanılan tüm argümanlara erişim sağlayan bir sözdoparameterdir. Bir diziye benziyor, ancak bir dizi değil. Özellikle, dizisi yöntemleri yoktur.

Fonksiyon ReduTetosum (Toplam, Değer) İşlev Sum () (Get Args \u003d Array.Prototype.Slice.call (argümanlar); args.Reduce (reducetosum, 0);) toplamı (1,2, 3);
Argümanlar anahtar sözcüğüne bir alternatif, kalan parametrelerin yeni sözdizimidir. Aşağıdaki örnekte, args, aradığınızda iletilen her şeyi içeren bir dizidir.

Fonksiyon toplamı (... args) (döndürme args.Reduce (reducetosum, 0);)

▍ Operatör geri dönüşü.

İadeyi ekspresyonun eksik olduğu işlev tanımlanmamıştır. İade anahtar sözcüğünü kullanarak, noktalı virgüllerin otomatik olarak yerleştirilmesinin mekanizmasının nasıl çalıştığına dikkat edin. Örneğin, aşağıdaki işlev boş bir nesneyi iade etmeyecektir, ancak tanımlanmamış:

Fonksiyon getObject () (dönüş ()) getObject ()
Böyle bir sorunu önlemek için, açılış braketi, geri dönüş ifadesinin bulunduğu aynı çizgiye yerleştirilmelidir:

Fonksiyon getObject () (dönüş ())

Dinamik Yazma

Javascript, dinamik yazarak bir dildir. Bu, spesifik değerlerin türleri olduğu ve değişkenlerin değil olduğu anlamına gelir. Program uygulaması sırasında aynı değişkende, değerleri kaydedebilirsiniz. farklı şekiller. İşte farklı türlerle çalışan bir fonksiyon örneğidir:

İşlev Günlüğü (Değer) (Console.log (Değer);) Günlük (1); log ("metin"); log ((Mesaj: "metin"));
Bir değişkende depolanan verilerin türünü netleştirmek için, Typeof () operatörünü kullanabilirsiniz:

N \u003d 1 olsun; Typeof (n); // number s \u003d "metin"; Typeof (lar); // string let fn \u003d fonksiyon () (); Typeof (fn); // işlevi.

Tek akışlı yürütme modeli

JavaScript yürütme ortamı tek dişlidir. Bu, özellikle, aynı anda iki fonksiyon yapmanın imkansızlığında ifade edilir (eğer burada etkilemediğimiz kodun eşzamansız yürütmesinin olanaklarını dikkate almazsanız). Yürütme ortamında, işlenecek görevlerin listesini depolayan sözde bir Olay Kuyumu (Olay Kuyruğu) vardır. Sonuç olarak, karşılıklı kaynak bloke edici problemlerin sorunu, JS'nin bir yürütülmesi için tek çiçekli tek çiçekli bir şema için sıradışıdır, bu nedenle engelleme mekanizması yoktur. Ancak, olayların kuyruğuna düşen kod hızla gerçekleştirilmelidir. Ağır işle aşırı yükleniyorsanız, tarayıcı uygulamasında, ana akışta, uygulama sayfası, kullanıcıya maruz kalmaya yanıt vermez ve tarayıcı bu sayfayı kapatmak için sunacaktır.

İstisna işleme

Javascript, istisna işleme için bir mekanizması var. Bu tür mekanizmalar için oldukça sıradan göre çalışır: Prensip: TL / Catch tasarımını kullanarak bir hataya neden olabilecek bir kod oluşturulur. Kodun kendisi TL ünitesindedir, hatalar yakalama bloğunda işlenir.

Bazen JavaScript'in, eğer serbest durumlarınız varsa, hata mesajı vermez. Bu, ECMAScript 3 standardını benimsemeden önce JS'nin hataları atmadığı gerçeğinden kaynaklanmaktadır.

Örneğin, kodun bir sonraki parçasında, "dondurulmuş" nesneyi değiştirme girişimi başarısız olur, ancak istisna verilmeyecektir.

OBJ \u003d Object.Freeze (()); Obj.message \u003d "Metin";
"Sessiz" JS hatalarından bazıları katı modda tezahür eder, "sıkı" tasarımını kullanarak açabilirsiniz; .

Prototip sistemi

Bu tür JS mekanizmalarının fonksiyon tasarımcıları olarak temeli, nesne.create komutu (), sınıf anahtar kelimesi prototiplerin sistemidir.
Aşağıdaki örneği düşünün:

Servis \u003d (doSomething: işlevi () ())) ÖzelleştirilmişService \u003d Object.Create (Servis); Console.log (SpecialedService .__ Proto__ \u003d\u003d\u003d Servis); // Doğru.
Burada, Özellikli Bir Nesne Nesnesini Yapmanız Gereken Prototipi, Nesne Nesnesini Yapmanız Gereken Prototip. Sonuç olarak, ÖzelleştirilmişService nesnesine başvurarak DOSOMENTING () yönteminin çağrılabileceği ortaya çıktı. Ek olarak, bu, uzmanService nesnesinin __Proto__ özelliğinin servis nesnesini gösterdiği anlamına gelir.

Şimdi Sınıf anahtar sözcüğünü kullanarak benzer bir nesneyi oluşturun:

SINIF HİZMETİ (DOSOMOTING ())) Sınıf SpecialedService Service'ı genişletiyor () ÖzelleştirilmişService \u003d New SpecialedService (); Console.log (ÖzelleştirilmişService .__ Proto__ \u003d\u003d\u003d SpecialedService.Prototype);
Servis sınıfında ilan edilen yöntemler Service.Prototype nesnesine eklenecektir. Servis sınıfı örnekleri aynı prototipe (Service.Prototype) olacaktır. Tüm örnekler, arama çağrılarını Service.Prototype nesnesine devretecektir. Sonuç olarak, yöntemlerin sadece bir kez bildirildiği, ardından sınıfın tüm örnekleri tarafından "miras alındılar".

▍CeClesure Prototipleri

Nesneler, diğer nesnelerin "varlıkları" olabilir. Her nesnenin, yöntemleri mevcut olan bir prototip vardır. Nesnede olmayan özelliğe başvurmaya çalışırsanız, JavaScript prototip zincirini aramaya başlayacaktır. Bu işlem, özellik bulunana kadar veya arama zincirin sonuna ulaşana kadar devam edecektir.

JavaScript'te fonksiyonel programlama

İÇİNDE JavaScript işlevleri Birinci sınıf nesnelerdir, dil kapaklar mekanizmasını desteklemektedir. Bu, JS'de fonksiyonel programlama yöntemlerini uygulama yolunu açar. Özellikle, daha yüksek dereceli işlevler uygulama olasılığı hakkında konuşuyoruz.

Kapanış, ebeveyn işlevi yerine getirildikten sonra bile, ana işlev içinde bildirilen değişkenlere erişimi olan bir dahili işlevdir.

En yüksek sipariş fonksiyonu, diğer işlevleri argümanlar, geri dönüş işlevleri olarak alabilen veya her ikisini de yapabilecek bir fonksiyondur.

JS'de fonksiyonel programlama çeşitli yayınlarda vurgulanır. Sizin için ilginçse - işte bu konuda adanmış bazı malzemeler

Javascript Sözdizimi Eğitimi

Okumaya başlamadan önce javascript EğitimiYazılım bilgisine sahip olmalısınız.

PHP, C veya Pascal gibi herhangi bir programlama diline zaten aşinassanız, JavaScript sözdizimini öğrenmenin büyük bir artı olacaktır ve ayrıca değişken, veri türünü, işlevi veya bir diziyi de anlayın.

Ancak, programlama dillerine aşina değilseniz, endişelenmeye değer değil, verilen javascript ders kitabı Sadece ve ilk önce programlama çalışmasına devam edenler için tasarlanmıştır.

Javascript (JavaScript) - Bu, HTML-Sayfa öğeleri (HTML etiketleri) ve bir web tarayıcısı tarafından kontrol edilebilecek bir istemci programlama dilidir, onları hareket ettirmeye, çeşitli etkinliklere (fare tıklamaları, klavye basılması), birçok ilginç program oluşturun ( Scripts): Testler, animasyon, fotoğraf galerileri (örneğin, VKontakte'de), oyunlar ve daha fazlası.

JavaScript'in çalışması nasıl

Ders çalışma javascript diligenellikle dört aşamaya ayrılır:
1. JavaScript Sözdizimi (Bu öğretici),
2. Çalışma Dom ve BOM.,
3. Javascript kullanarak DOM ve BOM kontrolü,
4. Çeşitli javascript kütüphanelerini incelemek. jquery. - en popüler olanı şu an kütüphane (JQuery Ders Kitabı, 2015 sonunda bu sitede görünmelidir).

DOM, belgenin nesne modelidir. DOM teknolojisi sayesinde, HTML sayfaları etiketleri nesnelerin nesnelerini ve bu ağaçtaki her nesneyi temsil etmeye başlar, benzersiz bir adres var. Bu adrese atıfta bulunan JavaScript dili, belirli bir HTML etiketine erişebilir ve yönetebilir (renk, boyut, konum ve MN. Dr.).

BOM bir tarayıcı belgesi modelidir. Yapı, DOM ile aynıdır, yalnızca HTML-Sayfa nesneleri yerine, tarayıcı nesneleridir: tarayıcı penceresi, tarayıcı ekran boyutları, ziyaret geçmişi, durum dizgisi vb.

DOM ve BOM'u öğrendikten sonra, JavaScript'te sayfa ve tarayıcı ile etkileşime giren daha az karmaşık komut dosyası oluşturmaya başlarlar.

Ardından, biraz ustalaşmış olan, JQuery gibi bazı JavaScript kütüphanesini inceleyin, onun sayesinde JavaScript ile aynı programları oluşturabilirsiniz, sadece daha hızlı ve daha verimli.

Bazı Webmasterlar, hemen önce üç aşamayı atlamaya başlamaya başlamaya başlar, ancak bunu tavsiye etmiyorum, çünkü herhangi bir durumda JavaScript sözdizimini anlamanız ve özellikleri, yöntemlerinin ve hedeflerinin DOM / BOM nesnelerini bilmeniz gerekir.

JavaScript kullanarak hangi programlar yazılabilir

Kullanma, birçok ilginç program oluşturabilirsiniz (komut dosyaları):
- Bir veya başka bir düğmeye basarak, site sayfasının öğelerini veya konumlarını değiştirecek komut dosyaları oluşturabilirsiniz.
- Bir animasyon oluşturabilirsiniz,
- Kullanıcı tarafından girilen verileri kontrol etmek gibi formları manipüle edin,
- Ege türü (okul sınavları) gibi çeşitli testler oluşturun ve hemen sonucu alın,
- BOM sayesinde, tarayıcının özelliklerini ve sitenizi ziyaret ettiğiniz bilgisayar bilgisayarını bulabilirsiniz, bu da çeşitli ziyaret sayaçları oluşturmanıza olanak sağlar.
- Javascript ile, hatta oyunlar, karikatürler ve diğer birçok ilginç ve yararlı programlar oluşturabilirsiniz.

JavaScript'te bu eğitimin amacı nedir?

Bunun amacı javascript kitapları sana öğretmek javascript Sözdizimi Temelleri, programlama ve değişkenler, veri türleri, işlemler, dallanma operatörleri, fonksiyonlar, döngüler, diziler, nesneler vb. Gibi kavramları tanıtın. Bütün bunlar diğer programlama dillerinde bulunur, bu nedenle JavaScript ustalaşmış olan, PHP, C ++ veya Python gibi diğer dilleri öğrenmeyi çok daha kolay olacaksınız.

Javascript Ders Kitabı Yapısı

İÇİNDE javascript'te ders kitabı.Aşağıdaki konular ve dersler dikkate alınacaktır.

Javascript - Web sayfamıza hitap eden istemci tarafında bazı adımlar atmamız gerektiğinde oyuna girer.

Javascript Web sayfasını sunucuya erişmeden değiştirebilir, girilen veri kullanıcısının değerlerini kontrol edin ve başka bir işlem gerçekleştirin.

Bu makale, JavaScript kullanmanıza izin verecek temel bilgiler içerir.

Komut dosyasını doğrudan sayfa koduna eklemek

JS kodunu doğrudan sayfanın içine yerleştirebilirsiniz.

Ayrı bir dosyada kod kaldırma

Gönderilebilir Javascript kodu harici dosyaya ve sayfadaki bağlantıyı kullan

Bu durumda kapanış etiketi gereklidir.

Kapanış etiketinin önündeki en iyi komut dosyaları

Değişkenler

Değişkenlerin isimleri

Değişken isimleri, büyük veya küçük bir harf, alt çizgi veya $ işareti ile başlatılabilir.

Ad, sayılar olabilir, ancak değişkenin adını sayılarla başlatmak mümkün değildir.

JavaScript Kayıt olun: MyText ve MyText iki farklı değişkendir.

Camelcase adını kullanmak, her kelimeyi büyük harfle değişken adına başlatmak daha iyidir.

İlan etmek

JavaScript'teki bildirim değişkenleri için kullanılır var..

Var mytext; // undefined mytext \u003d "Merhaba!"; Alarm (mytext);

Değişken ilan edildikten hemen sonra, değeri tanımsız.

Bildirildiğinde bir değer değişkeni atayabilirsiniz:

Var mytext \u003d "Merhaba!";

Ayrıca bir var içinde birkaç değişken ilan edebilirsiniz:

Var sum \u003d 4 + 5, mytext \u003d "Merhaba!";

Var değerini atarken, atlayabilirsiniz, ancak yapmaması daha iyidir.

Değişken çeşitleri

Javascript'te, satırları kullanabilirsiniz:

Var mytext \u003d "Merhaba!";

tüm sayılar:

Var myNumber \u003d 10;

Kesirli Sayılar:

var pi \u003d 3.14;

Mantık Değerleri:

Var isboolean \u003d false;

JavaScript Sözdiziminin Detayları

Yorumlar

Bir satırdaki yorumlar "//" tahsis edilir. Bu karakterlerden sonra gelen her şey yorum olarak kabul edilir.

Birkaç satırı yorumlamak için, yorumun başlangıcını belirlemek için "/ *" kullanmanız gerekir. Yorumun sonunu belirlemek için "* /"

/ * İşte yorum yaptı ve bu da yorum * /

Operatörlerin ayrılması

Operatörlerin ayrılması için, kullanmanız gerekir ";"

Arzu edilir, ancak mutlaka, metnin okunabilirliğini geliştirmek için boşlukları kullanın.

Dizeleri ile çalışmak

var str \u003d 4 + 5 + "7"

bir dize değeri verecek " 97 »Str.

Var str2 \u003d "7" + 4 + 5

bir dize değeri verecek " 745 "Str2'de.

Gerçek şu ki, eklenmesi gereken değer sırayla hesaplanır - soldan sağa. 2 sayı olduğunda - sonuç sayı olur. Bir dize ve sayı kıvrımlandığında, sayı bir dize olarak algılanır ve iki satırın bir kombinasyonu.

Satır çeviri

Dizeyi kullanılan numaraya aktarmak için parseint () ve parsefat ()

Bu işlevler iki argüman alır. Birincisi, sayıya ve ikincisine çevrilecek olan bir dizedir - tercüme etmek için kullanılacak sayı sisteminin tabanı. Satırı kesmek için ondalık sayı, ikinci argüman olarak 10 kullanmanız gerekir.

Var myNumber \u003d Parseint ("345", 10);

JavaScript işlevleri

JavaScript'deki fonksiyonlar aşağıdaki gibi ilan edilir:

İşlev MyFunction () (bazı JS kodu)

Kullanmanız gereken değeri iade etmek için dönüş.:

İşlev Mymultiptication (Paramone, Paramone * Paramtwo)

İşlev için adın adını düşürerek "anonim" işlevi bildirebilirsiniz.

İşlev, adını belirterek bir parametre olarak bir parametre olarak iletilebilir.

Nesneler

Hepsi JavaScript'te bir tweir.

Yeni bir tesis oluşturma

Var kişi \u003d yeni nesne (); // nesne kişisi oluşturma kişi.firstname \u003d "Andrew"; // ilk öznitelik adayı ekleyin.lastname \u003d "Peterson"; // bir ikinci özellik ekleyin Person.getfullname \u003d Function () () () () (// iadeyi ekleyin.

Bir nesne oluşturmak için ikinci, daha kısa seçenek

Var kişi \u003d (// bir nesne kişi oluşturma FirstName: "Andrew", Soyadı: "Peterson", getFullname: işlev () (This.Firstname + "" + this.lastname;)))

Nesne özellikleriyle çalışın

var bana \u003d yeni nesne ();

ben ["isim"] \u003d "serg";
me.age \u003d 33;

Javascript'teki diziler

Bir dizi oluşturma

Var arr \u003d yeni dizi (11, "Merhaba!", Doğru); // bir dizi oluşturma

Yeni kayıt yolu

Var arr \u003d; // bir dizi oluşturma

Javascript'teki dizilerle çalışma

Dizideki unsurların sayısı

Var uzunluğu \u003d arr.Length; // 3.

Bir diziye eleman ekleme - itme

arr.push ("yeni bir değer");

Dizinin son unsurunun çıkarılması - POP

var lastvalue \u003d arr.pop ();

Kolları birleştirmek

var arr2 \u003d; var longarray \u003d arr.concat (arr2); // iki arres arr ve arr2 bir birleştirme

Katıl - dizinin tüm unsurlarını birleştirin

var longstring \u003d arr.join (":") // "11: Merhaba!: TRUE"

JavaScript'te Karşılaştırma ve Mantıksal İşlevler

Az çok

var iStrue \u003d 6\u003e \u003d 5; // daha fazla veya eşit

Eşitlik

var isfalse \u003d 1 \u003d\u003d 2; // Eşit ISTRUE \u003d 1! \u003d 2; // nonavo var alsotrue \u003d "6" \u003d\u003d 6;

Kimlik

varixidentical \u003d "3" \u003d\u003d\u003d 3 // false, veri türleri tanımlanmadığından \u003d "3"! \u003d\u003d 3 // true, veri türleri çakışmaz çünkü

Operatör varsa

Eğer (5.< 6) { alert("true!"); } else { alert("false!") }

Şalter operatörü

Var öğle yemeği \u003d istemi ("Öğle yemeğinde ne istiyorsun?", "Öğle yemeğini burada yazın"); Anahtar (öğle yemeği) ("Sandwich" ("Sandwich": console.log ("Tabii ki!"); Break; vaka "çorba": console.log ("Anladım!" S favorim. ") ; Break; Case "Salata": Console.log ("İyi Sesler! İyi! : console.log ("Huh!" Ne "+ öğle yemeği +" olduğundan emin değilim. Bir sandviç nasıl? "););)

Mantıksal ve - &&

if (1 \u003d\u003d 1 && 2 \u003d\u003d 2) (Uyarı ("Gerçek!");)

Mantıksal veya - ||

İf (1 \u003d\u003d 1 || 2 \u003d\u003d 3) (Alert ("true!");)

Mantıksal değil -!

if (! (1 \u003d\u003d 1)) (Uyarı ("YANLIŞ!");)

Döngü

İçin

için (var i \u003d 0; ben< 10; i = i + 1) { alert(i); } var names = [ "Sergey", "Andrey", "Petr" ]; for (var i = 0, len = names.length; i < len; i = i + 1) { alert(names[i]); }

Süre

(True) (// sonsuz uyarı döngüsü ("bu asla durmayacak!");) Var adları \u003d ["Sergey", "Andrey", "Petr"]; İken (names.length\u003e 0) (Uyarı (isim [i]);)

Yaparken

Yap (uyarı ("bu asla durmayacak!");) İken (doğru) (// sonsuz döngü

Teller

Text \u003d "Blah Blah Blah Blah Blah Eric \\ Blah Blah Blah Eric Blah Blah Eric Blah Blah \\ Blah Blah Blah Blah Blah Eric";

Yüzeyler.

Bazen göstermek istemiyorsun tüm. String, sadece bir parçası. Örneğin, Gmail Gelen Kutunuzda, her bir mesajın ilk 50 veya daha sonra karakterini görüntülemek için ayarlayabilirsiniz, böylece bunları önizleyebilirsiniz. Bu önizlik bir substring Orijinal dizenin (mesajın tamamı).

"Bazı kelimeler" .Sübring (x, y), X, doğrama yaptığınız yerdeyken, orijinal dizeyi doğramak bitirdiğiniz yerdir.

Sayı kısmı biraz garip. "Hello" daki "O" için seçmek için, bunu yazacaksınız: "Hello". substring (0, 2);

Bunun gibi her karakterin solunu düşünün: 0-H-1-E-2-L-3-L-4-O-5.

0'da ve tekrar 2'de keserseniz, sadece o da kalırsınız.

Daha fazla örnek.:

1. "Batman" ilk 3 harfi
"Batman" .Sübstring (0.3)

2. 4. ila 6. "Laptop" harfi
"Laptop" .Sübstring (3.6)

  • komut dosyasını HTML belgesine (genel bilgi) nasıl yerleştirilir;
  • javaScript ile ilgili yorumlar;
  • değişkenler nasıl bildirilir ve onlara doğru isimleri verin;
  • script ve yöntemlerin sözdiziminin analizi;
  • aLERT () yöntemi;
  • faydalı önemsememek: geçici olarak çalışma için "fiş"

Yazardan

Web sayfaları oluşturmada birçok farklı incelik var. Ancak üç balina var. Bu HTML, CSS ve JavaScript'dir.

Kendi eğitimi aşağıdaki gibi düzenlemenizi öneririm: HTML sözdizimini en kısa sürede metin, resim ve tablolarla ilkel sayfa yapmayı öğrenir, sadece CSS çalışmasına bağlanın. CSS ile nasıl çalışılacağınızı anladıktan hemen sonra, her üç dilde "kelime hazinesi" e paralel olarak JavaScript'e başlayın. Bence yarım yılda çok güzel ve işlevsel bir site inşa edebilirsiniz.

Javascript'e nasıl yaklaşacağını bilmiyordum. Ders kitapları ya da çok soyut teorisi, teorisi ve teori ve pratik yapmayı netleştirmemektedir veya aksine, çok spesifik: burada hazır yemekler, al ve kullanan bir dizidir. dönüşler - ölen şeyin değil.

Bir şekilde bir derste Vadim Dunaev'i aldım. Birçoğu, biliyorum, bu eğitimi azaltın. Buna ek olarak, "()" yerine "()" yerine "()", örneğin "Q" ve kodlardaki Latin harflerinin değiştirilebileceği (yerler!) Benzer Ruslar'yı değiştirebileceğim bir Frozo taranmış PDF'yi indirdim. Genel olarak, yakalanmak zorunda kaldım. Ve dürüst olmak gerekirse, önce JavaScript hakkında hiçbir şey okumazsam, bu hataları anlarım ve lanet sayısına katılırdım. Ama sonra işsiz oturuyordum, nüfuz etmenin zamanı gelmişti ve ders kitabını sevdim. Ancak, zaten programlama ile temas eden insanlar için çok ayrıntılı ve tasarlanmıştır.

Not 2012.

Şimdi, birkaç yıl sonra ve bu ders kitabını eski zevk olmadan tedavi ediyorum. O modası geçmiş, yani oldukça yüzeyseldir; Ayrıca gerçek hatalar ve ihmal kodu var ve bazı yararlı şeyler bulunamadı. Ancak, arada arama motorlarında, "Crayframe liderleri" ile karşılaştırıldığında, bir şeydi.

Yani, iki harmanı öldürmeye çalışmak istiyorum. Herhangi bir su ısıtıcısı için ve aynı zamanda yapıcı-bilişsel bir şey yazın. Böylece bu su ısıtıcısı ipuçlarım temelinde basit ama tamamen orijinal bir komut dosyasını yazabilir.

HTML belgesine ekle

Muhtemelen HTML kodlarında bu etiketleri gördünüz:

Bu Abrakadabra etiketler arasında ve bir senaryo var.

Kendini etiketle

Bu özellik isteğe bağlıdır. Dilin versiyonunu netleştirmek için (javascript1.1, javascript1.2 vb.) Veya başka bir dil kullanırsanız (örneğin,

Metin türünü gösteren tipteki özellik: metin / JavaScript.. HTML 4.0 versiyonunda ortaya çıktı. Kullanmasını tavsiye ederim.

Özelliğe geçmeden önce src, HTML kodunun hangi bölümlerini, komut dosyalarını ekleyebileceğinizi öğrenin.

Herhangi birinde. Ama zihinle.

Genellikle komut dosyası, burada ve şimdi adı verilen belirli bir metnin çekilmesini gösterir. Bu komut dosyası doğrudan yerleştirilir , "Sahnede."

Sayfadaki diğer komut dosyalarında kullanılabilecek değişken reklamları olan, HTML kodunun herhangi bir sitesinden çağrılabilecek işlevlerle birlikte, değişkenli reklamlar vardır. Bu tür komut dosyaları, Etiketler arasında yerleştirmek için en makul ve .

Ancak, komut dosyasını hemen birden fazla Web sayfasında kullanmak için yapabilirsiniz. Bunu yapmak için, kodu uzantı ile ayrı bir dosyaya kaydedilmelidir. .js. (Örneğin, myscript_1.js.). Etiketler Artık yazmak için gerekli değildir.

Ve sonra, komut dosyasını web sayfasından aramak için bir özelliğe ihtiyacımız olacak src. Benzer bir etiket niteliğinin yanı sıra çalışır :

Yani bu, farklı sayfalara, aynı şapka veya komut dosyasına kaydedilen menü üzerine yerleştirilir. Özellikle SGK'nın geçmediği, hostinglere yardımcı olur.

Küçük komut dosyalarını, bazı HTML etiketlerinin özelliklerine, ancak biraz sonra ekleyebilirsiniz.

Bazen komut dosyası sonuna kadar yerleştirilmelidir. vücut. ya da kapandıktan sonra : Örneğin, gerekirse, komut dosyasını yürütmeden önce, tüm bağlantıları veya belgedeki tüm resimleri araştırır. Ancak bunun hakkında - daha sonra, JavaScript mekanizmalarını öğrenirken. Soyabilirsin.

Yorumlar

Diyorlar ki, hala komut dosyalarını anlamayan bu tür tarayıcılar var. Scriptleri güvenle devre dışı bırakmaya meyilli olan Meyaki kullanıcıları. Bu durumda, komut dosyası yürütülmeyecek, ancak kodu, aynı "Abrakadabra", sadece ekrana düşer.

Yani, düşmeyecek kadar, HTML yorumlarıyla sonuçlandırıyoruz.

Mmm ... ve yorumu kapatmadan önce bu iki parke nedir?

Kapanış yorumu zaten komut dosyasının "vücutta". Ve Javascript bu kranial htmls "gökyüzü parantezlerini anlamıyor, çünkü bu onun için bir hata üreten yabancı bir cisim. Bu işaret komut dosyasından sonra, HTML kapatma braketini görmez ve HTML, komut dosyasının metnini güvenle gizler ve ekranda "sol" kayıtları yoktur.

Yorumlara dokunduğumuz için, JavaScript'te, iki formu var - C ve C ++ (ve CSS'de de) ile aynı).

// bu yorum formu // sadece bir satırda geçerlidir, // her yeni satırda // bir yorum işareti ayarlamanız gerekir. Ve bu komut dosyası kodu ... / * Ve bu yorum formu, kapanış simgesini pompalamadığı sürece, ilkeyi yansıtan ayna gibi birçok satırdır. * / Ve şimdi tekrar komut dosyasının kodu ...

HTML yorumlarını ve JavaScript yorumlarını karıştırmayın! Bunlar farklı diller, ancak "bir şişede bir arada bulunurlar." Veya daha kesin olarak, bir bankada. Örümcekler gibi ...

Delapited tarayıcıların problemine dönelim. Diyelim ki, Javascript ile, iki fotoğraftan animasyonlu bir afiş gibi bir şey yaptınız. Ardından, "fakir" tarayıcıların kullanıcılarını (ve siz, umarım, tamamen özgecilikten yoksun değil), bu resimlerden en az birinin etiketi ile görünmesini sağlayabilirsiniz.

Hangi editörler komut dosyalarını yazıyor

Belki de Javascript için bazı özel editörler var. Kimseyle tanışmadım ve çok fazla görünmüyordum. Genellikle komut dosyaları, Web sayfaları oluşturmak için kullanılan aynı düzenlemelerde yazılır. Örneğin, ev sahibi seviyorum. Komut dosyasını bu editörlerde yazmak, kodun aydınlatılması dışında, basit bir dizüstü bilgisayarda yazmaktan farklı değildir. Ve bazen çok yardımcı olur. Bir zamanlar bir komut dosyası (bazı Almanca) indirdim ve çalışmıyor. Kod'a baktım ve anahtar kelimeyi gördüm değiştirmek Bazı nedenlerden dolayı tahsis edilmedi. Bakıyorum - ve yok değiştirmek, fakat İsveç., Donner, ıslatıcı! Kayın kaldırdım - ve gittim.

Bu arada, tüm örneklerimizde, kod tam olarak HomeSite penceresinde yola bakar.

Bir odadan taş ocağındaki

Aşağıdaki örnek, Dunaev'in intihalidir. Ama o kadar basit ve derin, dayanamayacağım. Buraya, aynı anda açıklamak için kayıt tasarımının yalnızca bazı ayrıntılarını ekledim.

Hemen sizi uyarıyorum: Neredeyse bu örnek kesinlikle işe yaramaz. Ancak JavaScript dilinin ve sözdiziminin birçok temel kavramını yoğunlaştırır.

Örnek 1.

Aslında senaryo

Bu kodu NET Notepad sayfasına kopyalayıp dosya.html olarak kaydederseniz, dosyayı açtığınızda, aşağıdakileri göreceksiniz:

Nasıl çıktığını merak edelim.

var x \u003d 5;

Burada 5'e eşit olan değişken X'i ilan ediyoruz.

Dur! Değişken'in ne olduğunu biliyor musunuz?

Değilse, bunu tıklayın ve açıklamayı okuyun.

Bir bilgisayar nasıl çalışır? Tüm veriler diske kaydedilir ve bulundukları yer, nerede aranacağı açık olmak için işaretlenmelidir. Herhangi bir program (ve komut dosyası küçük bir programdan başka bir şey değildir) bazı verilerle çalışır. Bu nedenle, hemen "bir yer skoru" için uygundur. Burası bu işaretli hafıza Ve değişken olur. Neden "Değişken"? Çünkü bu alan farklı değerlerle doldurulabilir. Örneğin, bir hesap makinesi ile çalışırken, girdiğimiz numaralar ve eylemler, ilgili değişkenlerde program tarafından kaydedilir. Ve yürütme düğmesine bastığınızda, algoritma girdiğimiz değerleri kullanır.

Program kodunda değişkenler, kendimiz için icat ettiğimiz isimler tarafından gösterilir. İsimler oluşturmak için, farklı programlama dillerinde farklı olabilecek bazı kurallar vardır. Aşağıda açıklanacak olan kısıtlamalar, özellikle JavaScript'e dahildir.

var. - Değişken ilan etmek için anahtar kelime (İngilizce değişkeninde).

x. - değişkenin adı.

Kısıtlamalar: Sadece Latin harfleri (herhangi bir kayıt), sayılar ve sembol sembolü değişken adında kullanılabilir. Bu durumda, değişken sayılarla başlamamalıdır. Ve boşluk yok.

Doğru değişken isimleri:

Yanlış değişken isimleri:

Javascript dili kayıt defterine duyarlıdır.

myvar., Myvar. ve myvar. - farklı değişkenler.

(Bu arada, kayıt hakkında. Dilin adının kendisi büyük J ve S ile yazılır. JavaScript. Bu kelimeyi HTML etiketlerinde yazmanın nasıl gerekli olduğu bir yanlış anlama var. Ancak HTML'ye duyarlı değil Kayıt, böylece lütfen, istediğiniz gibi yazabilirsiniz. En sevdiğim evim, biri - Big.)

Bu komut dosyasında, ilan edildiğinde hemen değişken bir değer atanır. Zorunlu değil. Değer daha sonra atanabilir. Çizginin sonunda virgülle bir nokta. Bu durumda bu da gerekli değildir. Ancak büyük ve karmaşık komut dosyalarında bazen önemlidir, bu yüzden eksiksiz bir ayrıntılı giriş gösterdim. Dunaev sadece bu ipi var x \u003d 5., açık duyuru var. Burada da gerekli değildir. Ancak (IMHO) hala tercihendir.

Bir sonraki satırda, zaten tahmin edebileceğiniz gibi, değişken bildirildi y.. Zaten duyurulmuş olanların anlamı verildi. x., 3 daha fazla x..

Ve sonra yöntem denir uyarmak ().

Bu yöntem, parantez içinde belirtilen mesaj içeren bir iletişim kutusu görüntüler. Bu, tüm JavaScript yöntemlerinin sözdizimidir: içeriğiyle yöntem ve parantezlerin adı.

Bu yöntemin içeriği, Y değişkesinin değeridir ve Sekiz'i göreceğiz iletişim kutusunda. Nedenini anladım?

Faydalı Tepelikler

Yöntemle tanıştığımızdan beri uyarmak (), sonra işte basit ve kullanışlı bir uygulaması: bazen sitenin bazı sayfaları henüz yapılmamıştır ve bağlantılar zaten hazırlanmıştır. "Sayfa 404" a almak tatsızdır. Bitinceye kadar beklemek de çok hoş değildir ve ardından bölümün gelişimini öğrenin. Her zaman böyle bağlantıları aşağıdaki gibi frenlerim:

"JavaScript: Alert (" Geliştirmede Sayfa ");"
\u003e Menü Öğesi

Bu arada, burada JavaScript kodunu HTML koduna uygulamanın başka bir yoludur. Burada özniteliğe yerleştirilir hREF. Tag referansı ve anahtar kelimeyle tanıtıldı " javascript:"(Bir kolon ve sonraki alanla: her zaman sözdizimsel trivia'ya dikkat edin). HTML özniteliği değerinin geleneksel çift tırnaklarına ve komut dosyasının metninde "yuvalanmış" tek alıntılara dikkat edin.

Çok yakında HTML etiketlerinin özel "olay" niteliklerini öğreneceğiz, örneğin, tıklamada.JavaScript kodunu tanıtmak için özel olarak tasarlanmıştır ve bir anahtar kelime gerektirmez.

Böylece öğrendik:

hTML belgesinde bir komut dosyası nasıl bildirilir, bu formlar bir JavaScript yorumları, değişkenleri nasıl bildirilir ve bunlara doğru adları ve ayrıca yöntemlerin sözdizimini ve özellikle Alert () yöntemini verir.

Ve ayrıca öğrenildi: