JavaScript'e giriş

Adına rağmen JavaScript yalnızca Java ile ilgilidir, çünkü ikisi de birkaç söz dizimsel benzerlikler bulunur. İlk geliştirmede JavaScript'in söz dizimi biraz Java'nın söz diziminden esinlenerek "LiveScript" olarak adlandırıldı ilk ne zaman Netscape Navigator'ın 1995 yılında beta sürümünde kullanıma sunulmuştur. Her ikisi de ve Netscape'in "canlı" olarak hizmet verdiği gerçeğine saygıyla tıklayın. Microsoft, kendi JavaScript uygulamasını yayınladı. "JScript", kullanmaya başladı.

Netscape, bu ilk çalışmayı Ecma International'ın bu standartların nasıl resmileştiğini ve ayrıntılandırıldığını açıklayan teknik standartlar geliştirir kodlama dili diğer tarayıcılar tarafından anlaşılmalıdır. Ecma, 1997'de Uluslararası bir komut dosyası çalıştırmanın ilk sürümünü standart hale getiren ECMA-262'yi yayınladı kullanıma sunuyoruz. ECMAScript, dosyanın oluşturulması konusunda bilgi veren Microsoft'un daha sonra bu programlama dili üzerinde çalışması, örneğin Microsoft'un artık kullanılmayan JScript, Adobe ActionScript ve JavaScript'in kendisidir.

Bu ayrım, Çevik yaklaşımın belirli yönleri ve özellikleri JavaScript'e dokunun. "ES5" "dönüştürülmüş" ilk büyük en son ECMAScript standardına göre 2009'da geliştirilmiştir. "ES6" ("ES2015"), Google Analytics 4'ün altıncı sürümü tarafından belirlenen standartların 2015'te yayınlanmıştır. ES6'dan sonra, ECMAScript'in yeni sürümleri her sürümdeki değişiklikler ve eklemelerle birlikte standart sürümü de her yıl kullanıma sunulmuştur. Yıla göre "ES2016" olarak anılır veya "ES2017" olarak kaydedin.

Temel kurallar

Derlenmiş dillerden farklı olarak, JavaScript bir kişinin yazdığı koddan çevrilmez tarayıcının anlayabileceği bir biçime dönüştürür. Tarayıcıya bir komut dosyası gönderilir işaretleme, resimler ve stil sayfaları gibi öğelerin yanı sıra, tarayıcı bu öğeleri yazıldığı gibi: Unicode karakterlerden oluşan, kullanıcıların okuyabileceği bir dizi olarak yukarıdan aşağıya doğru ayrıştırılır.

Bir JavaScript yorumcusu bir komut dosyası aldığında, öncelikle bir komut dosyasını oluşturan uzun karakter dizesini ayrıştıran sözcük analizi ve aşağıdaki ayrı giriş öğelerine dönüştürürsünüz:

  • Token'lar
  • Biçim kontrol karakterlerini
  • Hat sonlandırıcılar
  • Yorumlar
  • Boşluk (neredeyse) yani sekmeler ve boşluklar anlamına gelir).

Yeniden yüklendikten veya uygulamadan çıkıldıktan sonra komut dosyasının sonuçları geçerli sayfa içeriğini, aksi halde yapılması gerekenleri komut dosyası hazırlayacağım.

JavaScript uygulamaları genel olarak ifadeler ve ifadeler'i tıklayın.

İfadeler

İfade, bir veya daha fazla kod satırından oluşan bir talimat birimidir. anlamına gelir. Örneğin, yeni bir atama hedefi belirlemek için myVariable adlı bir değişkene bir değer ekler:

let myVariable = 4;

myVariable;
> 4

İfadelerin doğru yorumlanabilmesi için noktalı virgülle bitmesi gerekir. Ancak bu JavaScript yazırken noktalı virgüller her zaman gerekli değildir. Bu özellik otomatik noktalı virgül ekleme, bir satıra tam bir ifadeden sonra gelen kelime sonu, eksikse noktalı virgül olarak ele alınır noktalı virgül hataya neden olur.

ASI, hata düzeltme yöntemidir; JavaScript'in izin veren bir yönü değildir. Çünkü çok fazla güvenmek, RACI matrisini bozan belirsizliğe her ifadeyi noktalı virgülle manuel olarak sonlandırmanız gerekir.

Ekstreleri engelle

Blok ifadesi, herhangi bir sayıda ifadeyi ve bildirimleri bir çift içinde gruplandırır küme parantezi ({}). İfadeleri, JavaScript'in ihlal ettiği yerlerde yalnızca birini bekler.

Çoğunlukla, engelleme ifadelerinin yanında kontrol akışı ifadelerini if gibi:

if ( x === 2 ) {
  //some behavior;
}

İfadeler

İfade, bir değerle sonuçlanan bir kod birimidir ve dolayısıyla beklenen her yerde kullanılır. 2 + 2, değer 4:

2 + 2;
> 4

Kapanış parantezlerinin eşleşen bir çifti olan "gruplandırma operatörü", bir ifadenin bölümlerinin doğru olduğundan emin olmak için tek bir birim olarak değerlendirilir. Örneğin, iki adet gruplama operatörü kullanabilirsiniz işlemlerin matematiksel sırasını geçersiz kılmak için veya kodun okunabilirliğini iyileştirmek için:

2 + 2 * 4;
> 10

( 2 + 2 ) * 4;
> 16

let myVariable = ( 2 + 2 );

myVariable;
> 4

Zayıf yazma

JavaScript aşırı şekilde yazılmış bir dildir, yani bir veri değeri açıkça belirli bir veri türü olarak işaretlenmelidir. Güçlü yazılmış bir dilden farklı olarak JavaScript, amaçlanan türü bir değerin bağlamınız ve değeri o türe dönüştürür. Bu sürece baskı türünü kullanın.

Örneğin, güçlü bir şekilde yazılmış bir dildeki bir dize değerine sayı eklerseniz Python gibi kullanıldığında sonuç bir hatadır:

>>> "1" + 1
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: cannot concatenate 'str' and 'int' objects

JavaScript, hata döndürmek yerine sayı değerini bir dizeye zorlar. ve iki değeri birleştirir. Bu, toplama işlemi sırasında amaçlanan en olası davranıştır herhangi bir değeri dizeye ekleyin:

"1" + 1;
> "11"

Veri türleri de açıkça zorlanabilir. Aşağıdaki örnek, JavaScript'in yerleşik özelliği kullanılarak "100" değerindeki bir dize değerine 100 sayısal değeri toString yöntemi:

let myVariable = 100;

typeof myVariable;
> "number"

myVariable = myVariable.toString();
> "100"

typeof myVariable;
> "string"

Büyük/küçük harfe duyarlılık

HTML ve CSS'nin büyük çoğunluğundan farklı olarak JavaScript'in kendisi büyük/küçük harfe duyarlıdır. Bu, ilk başta her şeyden her zaman tutarlı bir şekilde büyük harfle başlamanız gerektiği anlamına gelir. tanımladığınız tanımlayıcılar için dilde yerleşik özellikler ve yöntemler kendiniz.

console.log( "Log this." );
> Log this.

console.Log( "Log this too." );
> Uncaught TypeError: console.Log is not a function
const myVariable = 2;

myvariable;
> Uncaught ReferenceError: myvariable is not defined

myVariable;
> 2

Boşluk

JavaScript, boşluklara duyarlı değildir. Bu, çevirmenin konuşmayı kullanılan boşluk miktarı ve türü (sekmeler veya boşluklar) ile ilişkilidir.

                     console.log(       "Log this"  );console.log("Log this too");
> "Log this."
> "Log this too."

Bununla birlikte, boşlukların bulunması diğer öğeler arasında bir ayırıcı olarak sözlü simgeler:

let x;

[jetonlar: [let] [x] ]

letx;
> Uncaught ReferenceError: letx is not defined

[jetonlar: [letx] ]

Boşlukların anlamlı sözlükleri ayırmak için kullanıldığı durumlarda, ayrıştırıcı boşluk miktarını ve türünü yok sayar:

let           x                             =                           2;

[jetonlar: [let] [x] [=] [2] ]

Aynı durum satır sonları için de geçerlidir. Ancak satır sonlarının, bir ifadeyi erken sonlandırıp sorunlara yol açabilir):

let x
=
2;

[jetonlar: [let] [x] [=] [2] ]

Stilden bahsedecek olursak, bazı ifade türleri sıkça tek bir satır işgal eder:

let x = 1;
let y = 2;

Bazı ifadelerde genellikle birden çok satır kullanılır:

if ( x == 2 ) {
  //some behavior;
}

Bununla birlikte, bu kurallar okunabilirlik sağlamaya yöneliktir. JavaScript önceki örnekleri aşağıdaki gibi yorumlar:

let x=1;let y=2;
if(x==2){}

Bu nedenle, komut dosyası dosyalarının aktarım boyutunu küçültmek için kullanılması, JavaScript'in hazırlanmasında yaygın olarak kullanılan bir adımdır optimize edilmiş araçlar kullanır.

JavaScript'te boşluk karakterlerinin kullanımı büyük ölçüde bir yazar ve tercih edebilir. Birden fazla geliştiriciye sahip JavaScript projeleri katkıda bulunan kod, çoğu zaman belirli boşluk kurallarını önerip Kod biçimlendirmesinin tutarlı olmasını sağlayın. Örneğin, iç içe yerleştirilmiş ifadeleri girintilandırın:

let myVariable = 10;

if ( typeof myVariable === "number" ) {
    console.log( "This variable is a number." );
    if( myVariable > 5 ) {
     console.log( "This variable is greater than five." );
    }
}

> "This variable is a number."
> "This variable is greater than five."

Öğrendiklerinizi sınayın

İfade nedir?

Kodun işlevini açıklayan bir yorum.
Değerle sonuçlanan kod birimi.
İfade ve beyan grubu.

JavaScript büyük/küçük harfe duyarlıdır.

Yanlış
Doğru