• Javascript kapsamı ve örnek programlar. JavaScript nedir? Java veya JavaScript'in benzer yönleri

    JavaScript, Netscape'te programcı Brendan Eich tarafından oluşturuldu ve Aralık 1995'te LiveScript adı altında tanıtıldı. JavaScript'in resmi adı ECMAScript olmasına rağmen oldukça hızlı bir şekilde JavaScript olarak yeniden adlandırıldı. ECMAScript, Uluslararası Organizasyon ECMA (Avrupa Bilgisayar Üreticileri Birliği) tarafından geliştirilmiş ve sürdürülmüştür.

    JavaScript nedir?
    1) JavaScript bir betik dili veya betiklerdir. Komut dosyası, bir program kodudur - çalıştırmadan önce ön işleme (örneğin derleme) gerektirmeyen bir dizi talimattır. JavaScript kodu, bir web sayfasının yüklenmesi sırasında tarayıcı motoru tarafından yorumlanır. Tarayıcı yorumlayıcısı orijinal programı veya sorguyu satır satır ayrıştırır, işler ve yürütür.

    2) JavaScript, prototip kalıtımı olan nesne yönelimli bir dildir. Birkaç yerleşik nesneyi destekler ve ayrıca kendi (özel) nesnelerinizi oluşturmanıza veya silmenize olanak tanır. Nesneler, özellikleri doğrudan birbirlerinden devralarak bir prototip nesne zinciri oluşturabilir.

    Web sayfalarında JavaScript 1. Komut dosyalarını html belgesine bağlama

    JavaScript komut dosyaları satır içidir, yani içerikleri belgenin bir parçasıdır ve harici olanlar ayrı bir .js dosyasında saklanır. Komut dosyaları bir html belgesine aşağıdaki şekillerde gömülebilir:

    veya sayfa gövdesi.

    Bu yöntem genellikle büyük betikler veya farklı web sayfalarında yeniden kullanılan betikler için kullanılır.

    Bir olay işleyicisi olarak.
    Her html öğesinin belirli bir anda tetiklenen JavaScript olayları vardır. html elemanına gerekli olayı bir özellik olarak eklemeniz ve bu özelliğin değeri olarak gerekli işlevi belirtmeniz gerekir. Bir olayın başlatılmasına yanıt olarak çağrılan işlev, olay işleyicisidir. Olayın tetiklenmesinin bir sonucu olarak, onunla ilişkili kod yürütülecektir. Bu yöntem esas olarak kısa komut dosyaları için kullanılır, örneğin arka plan rengini bir düğmeye tıklandığında değişecek şekilde ayarlayabilirsiniz:

    var colorArray = ["#5A9C6E", "#A8BF5A", "#FAC46E", "#FAD5BB", "#F2FEFF"]; // arka plan renkleriyle bir dizi oluştur var i = 0; function changeColor()( document.body.style.background = colorArray[i]; i++; if(i > colorArray.length - 1)( i = 0; ) ) Arka planı değiştir

    Elemanın içinde.
    Öğe, belgede herhangi bir yere eklenebilir. Etiketin içinde, tarayıcı tarafından okunduktan hemen sonra yürütülen veya çağrıldığı anda yürütülen işlevin açıklamasını içeren kod bulunur. İşlevin açıklaması herhangi bir yere yerleştirilebilir, asıl önemli olan, çağrıldığında işlev kodunun zaten yüklenmiş olmasıdır.

    Tipik olarak, JavaScript kodu belgenin başına (öğe) veya açılış etiketinden sonra yerleştirilir. Komut dosyası, örneğin bir sayaç kodu gibi sayfa yüklendikten sonra kullanılıyorsa, bunu belgenin sonuna yerleştirmek daha iyidir:

    document.write("Adınızı giriniz");

    2. JavaScript'teki veri türleri ve değişkenler

    Bilgisayarlar bilgileri - verileri işler. Veriler çeşitli biçimlerde veya türlerde sunulabilir. JavaScript'in işlevlerinin çoğu, basit bir dizi nesne ve veri türü aracılığıyla uygulanır. Dizeler, sayılar ve mantıkla ilgili işlevsellik, dize, sayı ve boolean veri türlerini temel alır. Düzenli ifadeler, tarihler ve matematiksel işlemler dahil olmak üzere diğer işlevler, RegExp, Date ve Math nesneleri tarafından sağlanır.

    JavaScript'teki hazır değerler, özel bir veri türü sınıfıdır, üç veri türünden birinin sabit değerleridir - dize, sayısal veya boole:

    "bu bir dizidir" 3.14 true alert("Merhaba"); // "Merhaba" değişmez bir değerdir var myVariable = 15; // 15 bir değişmezdir

    İlkel bir veri türü, string, numeric, boolean, null ve undefined gibi belirli bir veri türünün örneğidir.

    2.1. JavaScript'teki değişkenler

    JavaScript betiği tarafından işlenen veriler değişkendir. Değişkenler, programın yürütülmesi sırasında değişebilen verileri (değerleri) bilgisayar belleğinde depolayan adlandırılmış kaplardır. Değişkenlerin bir adı, türü ve değeri vardır.

    Bir değişken adı veya tanımlayıcı yalnızca a-z , A-Z harflerini, 0-9 rakamlarını (bir rakam, değişken adındaki ilk karakter olamaz), $ sembolünü (bir değişken veya işlevde yalnızca ilk karakter olabilir) içerebilir ad) ve alt çizgi _ , boşluklara izin verilmez. Değişken adının uzunluğu sınırlı değildir. Değişken isimlerini Rus alfabesinin harfleriyle yazmak mümkündür, ancak önerilmez, bunun için Unicode ile yazılmalıdır.

    JavaScript anahtar sözcüklerini değişken adı olarak kullanamazsınız. JavaScript'teki değişken adları büyük/küçük harfe duyarlıdır, yani var mesajı; ve varMessage; farklı değişkenlerdir.

    Var anahtar kelimesi ve ardından değişken adı, örneğin var mesajı kullanılarak bir değişken oluşturulur (bildirilir); . Bir değişkeni kullanmadan önce bildirmeniz gerekir.

    Bir değişken, = atama operatörü kullanılarak bir değerle başlatılır, örneğin, var mesaj="Merhaba"; , yani bir mesaj değişkeni oluşturulur ve orijinal değeri "Merhaba" ile içinde saklanır. Bir değişken bir değer olmadan bildirilebilir, bu durumda ona varsayılan olarak undefined değeri atanır. Bir değişkenin değeri, kod yürütme sırasında değişebilir. Aynı satırda farklı değişkenler virgülle ayrılarak bildirilebilir:

    Var mesaj = "Merhaba", sayı_msj = 6, zaman_msg = 50;

    2.2. Değişken Veri Türleri

    JavaScript türlenmemiş bir dildir; belirli bir değişken için veri türünün, bildirildiğinde belirtilmesine gerek yoktur. Bir değişkenin veri türü, aldığı değerlere bağlıdır. Bir değişkenin türü, verilerle işlem gerçekleştirme sürecinde değişebilir (dinamik tip dökümü). Tür dönüştürme, kullanıldıkları bağlama bağlı olarak otomatik olarak gerçekleştirilir. Örneğin, + işleci ile sayısal ve dizi değerleri içeren ifadelerde, JavaScript sayısal değerleri dizelere dönüştürür:

    Var mesajı = 10 + "tatilden önceki gün"; // "Tatile 10 gün kaldı" değerini döndürür

    typeof operatörünü kullanarak bir değişkenin veri tipini alabilirsiniz. Bu işleç, karşılık gelen türü tanımlayan bir dize döndürür.

    35 türü; // "metin" türünün "sayı" türünü döndürür; // "dize" typeof true değerini döndürür; // "boolean" typeof döndürür; // tanımsız "nesne" tipini döndürür; // "tanımsız" typeof null döndürür; // "nesne" döndürür

    JavaScript'teki tüm veri türleri iki gruba ayrılır - basit veri türleri (ilkel veri türleri) ve bileşik veri türleri (bileşik veri türleri).

    Basit veri türleri arasında string, numeric, boolean, null ve underfined bulunur.

    2.2.1. Dize türü (dize)

    Çift veya tek tırnak içine alınmış bir karakter dizisini saklamak için kullanılır. Tek veya çift tırnak içine alınmış boş bir karakter kümesi, boş bir dizedir. Tırnak içine alınmış bir sayı da bir dizedir.

    var para = ""; // boş dizi, sıfır karakter var work = "test"; var gün = "Pazar"; var x = "150";

    Çift tırnaklı bir dizeye tek bir alıntı ekleyebilirsiniz ve bunun tersini de yapabilirsiniz. Aynı türden bir alıntı, ters eğik çizgi karakteriyle \ (kaçış dizisi olarak adlandırılır) atlanır:

    Document.writeln("\"Günaydın İvan İvanoviç!\"\n"); // "Günaydın, İvan İvanoviç!"

    Dizeler, + birleştirme operatörü kullanılarak birleştirilebilir ve birleştirilebilir. Otomatik tip atama ile sayılar ve diziler birleştirilebilir. Stringler kalıcıdır, bir string oluşturulduktan sonra değiştirilemez, ancak diğer stringler birleştirilerek yeni bir string oluşturulabilir.

    2.2.2. Sayısal tür (sayı)

    Sayısal değerler için kullanılır. JavaScript'te iki tür sayı vardır: Tamsayılar (tam sayı) ve kayan noktalı sayılar (kayan noktalı sayı). Tamsayı değerleri 1 , 2 gibi pozitif ve -1 , -2 veya sıfır gibi negatif olabilir. 1 ve 1.0 aynı değerdir. JavaScript'teki çoğu sayı ondalık gösterimde yazılır, ancak sekizli ve onaltılık gösterim de kullanılabilir.

    Ondalık sistemde sayısal değişkenlerin değerleri 1, 2, 3, 4, 5, 6, 7, 8, 9, 0 Arap rakamları kullanılarak verilir.

    Sekizli biçimde bir sayı, 0'dan 7'ye kadar olan rakamları içeren ve 0 ön ekiyle başlayan bir dizidir.

    Onaltılık biçimin önüne 0x (0X) ve ardından 10 ila 15 değerlerine karşılık gelen 0 ila 9 sayıları veya a (A) ila f (F) harfleri gelir.

    Var = 120; // tamsayı ondalık sayısal değer var b = 012; // sekizli biçim var c = 0xfff; // hex formatı var d = 0xACFE12; // onaltılı biçim

    Kayan noktalı sayılar, kesirli ondalık kısmı olan sayılardır veya üstel biçimde ifade edilen sayılardır. Sayılar için üstel gösterim şu şekildedir: kesirli ondalık kısmı olan bir sayı, ardından büyük veya küçük harfle belirtilebilen e harfi, ardından isteğe bağlı bir + veya - işareti ve bir tamsayı üssü.

    Var = 6.24; // gerçek sayı var b = 1.234E+2; // gerçek sayı, 1.234 X 10²'ye eşdeğer var c = 6.1e-2; // gerçek sayı, 6,1 X 10‾²'ye eşdeğer

    2.2.3. Boole tipi (boolean)

    Bu türün true (true), false (false) olmak üzere iki değeri vardır. Koşulları karşılaştırmak ve test etmek için kullanılır.

    Var answer = accept("Bu makaleyi beğendiniz mi?\n Tamam'a tıklayın. Beğenmediyseniz İptal'e tıklayın."); if (cevap == doğru) (alert("Teşekkürler!"); )

    Özel basit değer türleri de vardır:
    boş tür - Bu tür, var olmayan nesneleri temsil etmek için kullanılan tek bir null değerine sahiptir.

    tanımsız tip - yetersiz tanımlanmış bir değişkenin tipi, değişkenin başlangıç ​​değerinin olmamasının yanı sıra nesnenin var olmayan bir özelliğinin olmaması anlamına gelir.

    Bileşik veri türleri birden fazla değerden oluşur. Bunlar, nesneleri ve özel nesne türlerini - dizileri ve işlevleri içerir. Nesneler özellikler ve yöntemler içerir, diziler dizinlenmiş bir öğeler koleksiyonudur ve işlevler bir ifadeler koleksiyonundan oluşur.

    2.3. Küresel ve yerel değişkenler

    Kapsama göre değişkenler genel ve yerel olarak ayrılır. Kapsam, içinde bir değişken adının bu değişkenle ilişkilendirildiği ve değerini döndürdüğü betiğin parçasıdır. Bir fonksiyonun gövdesinde bildirilen değişkenlere yerel değişkenler denir ve sadece o fonksiyon içinde kullanılabilirler. Yerel değişkenler, karşılık gelen işlevle birlikte oluşturulur ve yok edilir.

    Bir öğenin veya bir işlevin içinde, ancak var anahtar kelimesi kullanılmadan bildirilen değişkenlere global denir. Sayfa tarayıcıda yüklü olduğu sürece bunlara erişilebilir. Bu tür değişkenler, tüm işlevler tarafından kullanılabilir ve veri alışverişi yapmalarına izin verir.

    Global değişkenler, bireysel program bileşenlerinin etkileşime girdiği yer olan global ad alanına girer. Benzer değişken adları zaten başka herhangi bir kod tarafından kullanılabileceğinden, komut dosyasının başarısız olmasına neden olabileceğinden, değişkenlerin bu şekilde bildirilmesi önerilmez.

    JavaScript'teki genel alan, genel pencere nesnesi tarafından temsil edilir. Genel değişkenlerin eklenmesi veya değiştirilmesi, genel nesneyi otomatik olarak günceller. Buna karşılık, genel nesnenin güncellenmesi, genel ad alanını otomatik olarak günceller.

    Genel ve yerel değişken aynı ada sahipse, yerel değişken genel değişkene göre önceliklidir.

    Farklı kod bloklarında bir işlev içinde bildirilen yerel değişkenler aynı kapsama sahiptir. Ancak, tüm değişken bildirimlerinin işlevin başına yerleştirilmesi önerilir.

    Bir tarayıcıda web sayfalarının tam ve optimum çalışması için, içinde javascript'in etkinleştirilmesi gerekir.

    Nedir ve nasıl etkinleştirilir, bu makalede açıklayacağız.

    Pivot Tablo Javascript nedir?

    JavaScript, çoklu paradigma dili olarak adlandırılabilir. Birçok programlama yöntemini destekler. Örneğin, nesne yönelimli, işlevsel ve zorunlu.

    Bu programlama türü hiçbir şekilde java ile doğrudan ilgili değildir. Bu programlama dilinin ana sözdizimi, C dilinin yanı sıra C++ 'dır.

    Tarayıcı web sayfalarının temeli, programcıların yardımıyla sayfalara çeşitli etkileşimli öğeler ekleyen HTML kodudur.

    Javascript tarayıcıda devre dışı bırakılırsa etkileşimli öğeler çalışmaz.

    Bu tür bir programlama dili, Sun Microsystems ve Netscape'in ortak çalışması sayesinde ortaya çıktı.

    Başlangıçta JavaScript'e LiveScript adı verildi, ancak Java dili programcılar arasında popüler hale geldikten sonra geliştirme şirketleri onu yeniden adlandırmaya karar verdi.

    Netscape'in pazarlama departmanı, böyle bir ismin yeni programlama dilinin popülaritesini artıracağını düşündü ve bu aslında gerçekleşti.

    JavaScript'in doğrudan Java ile ilgili olmadığını hatırlayın. Tamamen farklı dillerdir.

    JavaScript özellikleri

    Bu programlama dili, çok yönlülüğü nedeniyle sınırsız sayıda olasılığa sahiptir.

    Uygulamanın ana yönleri, akıllı telefonlar için mobil uygulamalar, sitelerin ve hizmetlerin etkileşimli web sayfalarıdır.

    İnovasyonun çoğu, bugün dilde kullanılan özellikleri sağlayan AJAX ile projeye katılmaktan geldi.

    JavaScript, trafikten tasarruf etmek ve kullanım kolaylığını artırmak için, sitelerin ve hizmetlerin sayfalarını, kullanıcı çevrimiçi fark etmeden küçük parçalar halinde değiştirme olanağı sağlar.

    Bu, yeni bilgiler düzenlenirken veya eklenirken sitenin çevrimdışı olmasını gerektirmez.

    Değişiklikler, yenileme veya sayfa yeniden yükleme gerektirmeden hemen gerçekleşir.

    JavaScript özelliği çeşitli nedenlerle devre dışı bırakılabilir.

    Web'de gezinmek için gerekli olmadığı için önceki kullanıcının kasıtlı olarak devre dışı bırakması mümkündür. Ayrıca, kapatma kendi başına gerçekleşebilir.

    Javascript'i devre dışı bırakmak bazı bağlantıların başarısız olmasına neden olabilir. Aşağıda, popüler tarayıcılarda bu özelliği etkinleştirmenin yollarına bakacağız.

    Yandex tarayıcısı

    JavaScript işlevini sürüm 22 ve altında etkinleştirmek için araç çubuğuna gidin ve "Ayarlar" menü öğesini seçin.

    Javascript'i etkinleştirmek için, işlevi etkinleştirmek için "JavaScript Kullan" kutusunu işaretlemeniz gereken "İçerik" bölümüne gidin.

    Özelliği devre dışı bırakmak için bu kutunun işaretini kaldırın.

    Değişiklikleri kaydetmek için "Tamam" düğmesini tıklayın ve tarayıcı sayfasını yenileyin.

    Değişikliklerin etkili olması için tarayıcınızı yeniden başlatmanız gerekmez. Etkinleştirmeden sonra, web'de tam olarak gezinebilecek ve etkileşimli hizmetler üzerinde işlemler gerçekleştirebileceksiniz.

    Opera Sürümleri 10.5 - 14

    Öncelikle tarayıcı ayarlarını açmamız gerekiyor.

    Sol üst köşede, "Menü" düğmesine basın, içerik menüsünde "Ayarlar" öğesinin üzerine gelin ve "Genel ayarlar ..." alt öğesini tıklayın.

    Bu, yeni bir tarayıcı ayarları penceresi açacaktır.

    İçinde "Gelişmiş" sekmesini seçmelisiniz.

    Sekmenin sol menüsünde, "İçerik" öğesini tıklayın, ardından "JavaScript'i Etkinleştir" ve "Java'yı Etkinleştir" öğelerindeki iki onay kutusunu işaretleyerek işlevi etkinleştiriyoruz.

    Devre dışı bırakmak için bu onay kutularının işareti kaldırılmalıdır.

    Opera sürüm 10.5 ila 14'te javascript'i etkinleştirme ve devre dışı bırakma

    Kutuları işaretledikten veya işaretlerini kaldırdıktan sonra, OK düğmesine basarak değişiklikleri kaydedin.

    Şimdi değişikliklerin etkili olması için tarayıcıyı yeniden başlatın. Tüm javascript işlevleri kullanımınıza sunulacaktır.

    15 ve üzeri sürümler

    Opera tarayıcısının bu sürümlerinde, JavaScript'i etkinleştirmek çok daha kolaydır.

    Ayarlar penceresini açmak için, açık bir tarayıcıda Alt + P kısayol tuş kombinasyonuna basmanız gerekir. Açılan menüde "Siteler" sekmesini açın.

    İşlevi etkinleştirmek için, "JavaScript yürütmesine izin ver" öğesindeki "onay kutusunu", devre dışı bırakmak için - "JavaScript yürütmesini yasakla" seçeneğini ayarlamanız gerekir.

    Bundan sonra, değişiklikleri kaydetmek için "Tamam" düğmesini tıklamanız ve F5 tuşuyla veya adres çubuğunun solundaki ilgili simgeye tıklayarak görüntülediğiniz sayfayı yenilemeniz yeterlidir.

    Tarayıcınızı yeniden başlatmanız gerekmez.

    safari

    Apple'ın tescilli tarayıcısında JavaScript işlevini etkinleştirmek için ayarlara gitmeniz gerekir.

    Bunları açmak için "Safari" düğmesini tıklamanız ve " Ayarlar».

    İnternette farklı amaçlara hizmet eden sitelerde barındırılan milyonlarca web sayfası bulunmaktadır. Bazıları çekici ve diğerleri değil.

    İyi görünen, kullanımı kolay ve sizi uzun süre meşgul edecek kadar etkileşimli olanlar, JavaScript kullananlardır. Bu ne için? Hadi bulalım.

    Çok paradigmalı bir dildir, yani nesne yönelimli, işlevsel ve zorunlu programlamayı destekler. Adı Java'yı çağrıştırsa da, sözdizimi C dilinden türetilmiştir.

    Çoğu web sayfası HTML kodu biçiminde oluşturulmuştur. Bir web sayfasına çeşitli öğeler eklemenizi sağlayan, onu çekici ve okunabilir kılan çok basit bir dildir. HTML kodu, web sayfaları için satır içi görüntüleri, renkleri ve temel animasyonları kullanmanıza ve böylece görünümlerini iyileştirmenize olanak tanır. CSS (Basamaklı Stil Sayfaları) kullanmak daha fazla esneklik sağlar ve genel kod miktarını ve web sayfalarının karmaşıklığını azaltır. Bu sayede sayfa içeriklerini cep telefonu, tablet, masaüstü bilgisayar gibi farklı cihazlarda sunmak daha kolay hale geliyor. JavaScript, esas olarak web sayfalarına etkileşimli öğeler ekleyerek onları daha kullanıcı dostu ve çekici kılmak için kullanılır. Neler yapabildiğini ve nasıl kullanıldığını görelim.

    JavaScript nedir?

    Genellikle istemci tarafında yürütülen bir programlama dilidir. Kullanıcı etkileşimi için kullanılır. Ayrıca oyunların, masaüstü ve mobil uygulamaların geliştirilmesinde, pdf belgelerinin ve masaüstü widget'larının oluşturulmasında kullanılır. Web tarayıcılarının bu dil için yerel desteği vardır.

    örnek 1

    İlk örnek oldukça basittir ve genellikle menü öğelerinde kullanılır. Farenizi belirli bir bağlantının veya menü düğmesinin üzerine getirirseniz renk değiştirir. Kullanıcı eylemindeki bu renk değişikliği, çeşitli görsel efektler için kullanılabilir ve ayrıca bir web sayfasının görünümünü ve hissini iyileştirir. Aşağıdaki örnekte, seçtiğiniz düğmenin üzerine gelin ve renginin değiştiğini görün.

    Kırmızı Yeşil Mavi color(el, color) işlevi ( el.style.color = "#FFFFFF"; el.style.backgroundColor = color; ) işlevi uncolor(el) ( el.style.color = "#000000"; el. style.backgroundColor = "#E6E6E6"; )

    Örnek 2

    Bu mükemmel bir olay örneğidir. Birkaç web sayfasında benzer bir şeyle karşılaştım. Düğmeye basıldığında, ekranda bir mesaj belirir. Bundan sonra ne yapacağınızı söyleyebilir veya size yararlı bir şeyler söyleyebilir. Aşağıdaki örnekte butona tıklandığında ekrana basit bir mesaj geliyor.

    Düğme

    JavaScript yaygın olarak kullanılsa da, kullanıcı tamamen ona bağımlı olmamalıdır. Herkes kodu çoğaltabileceğinden belirli güvenlik sorunları vardır. Farklı tarayıcılar, oluşturma motorlarına göre farklı şekilde yorumlayabilir ve bu da görüntü tutarsızlıklarına neden olabilir. Bununla birlikte, bu gibi endişelere rağmen, JavaScript çok popülerdir ve internette yaygın olarak kullanılmaktadır.

    JavaScript programlama dili, başlangıçta Netscape Communications tarafından LiveScript adı altında geliştirilen, ancak daha sonra "JavaScript" olarak yeniden adlandırılan ve sözdizimi daha yakın olduğu için bu dil Sun Microsystems'ın Java'sına daha yakın olan nesne yönelimli bir betik dilidir. JavaScript daha sonra ECMA tarafından ECMAScript adı altında standartlaştırıldı. Microsoft, sürümlerini JScript olarak adlandırır.

    LiveScript'ten JavaScript'e ad değişikliği, Netscape'in Netscape Navigator tarayıcısında Java teknolojisini etkinleştirdiği sıralarda gerçekleşti. Bu değişiklik, yeni başlayan programlama öğrencilerinin kafasında çok fazla kafa karışıklığına neden oldu. Java ve JavaScript arasında gerçek bir bağlantı yoktur, benzerlikleri başlar ve benzer sözdizimi ile biter ve her iki dilin de internette yaygın olarak kullanılması.

    JavaScript, Document Object Model (DOM) adı verilen bir arabirim aracılığıyla içerikle etkileşime giren, web'de gezinirken kullanıcının web tarayıcısında sunucu tarafında (web sunucuları) ve istemci tarafında çalıştırılabilen, nesne yönelimli bir betik dilidir. Birçok web sitesi, aptallar için programlamada güçlü dinamik web uygulamaları oluşturmak için istemci tarafı JavaScript teknolojilerini kullanır. Unicode kullanabilir ve normal ifadelerin gücünü ve gücünü kullanabilir (bu, Netscape Navigator 4 ve Internet Explorer 4'teki 1.2 sürümünde tanıtıldı). Dize olarak bulunan JavaScript ifadeleri, EVAL işlevi kullanılarak yürütülebilir.

    JavaScript'in ana görevlerinden biri, statik HTML'de mümkün olmayan belirli görevleri gerçekleştirmek için tarayıcıdan DOM ile etkileşim kurmanıza izin veren HTML sayfalarına gömülü küçük işlevlerdir: örneğin yeni bir pencere açmak, form değerlerini kontrol etmek, vurgulu farelerdeki görüntü vb. Ne yazık ki, bu tür işlevlerin oluşturulması oldukça sıkıcı bir iştir, çünkü tarayıcılar standartlaştırılmamıştır, farklı tarayıcılar farklı nesneler veya komut dosyası yöntemleri oluşturabilir ve bu nedenle, genellikle farklı tarayıcılar için bir JavaScript işlevinin farklı sürümlerini yazmak gerekir, ancak bu çok fazla değildir. programlamanın temellerini öğretirken uygundur.

    JavaScript / ECMAScript aşağıdakiler gibi motorlar tarafından desteklenir:

    • Gergedan
    • Örümcek maymunu

    Çevre

    İşaretleme yorumu, etiketi tanımayan tarayıcılarda kodun metin olarak görünmemesini sağlamak için gereklidir. Ancak XHTM/XML belgelerindeki etiketler, yorum yapılmadığı takdirde çalışmaz. XHTML ve XML'i destekleyen modern tarayıcılar, bu belgelerdeki kodun yorumsuz kaldığını kabul edecek kadar iyi tasarlanmıştır.

    Bir HTML öğesi, bir komut dosyası işleyicisinin eklenebileceği dahili olaylar oluşturabilir. Geçerli bir HTML 4.01 belgesi oluşturmak için belgenin başlık bölümüne uygun varsayılan betik dili ifadesini eklemeniz gerekir.

    Dil öğeleri

    Değişkenler

    Değişkenler genellikle dinamik olarak yazılır. Değişkenler, basitçe onlara bir değer atayarak veya "var" ifadesi kullanılarak tanımlanır. Bir fonksiyonun dışında bildirilen değişkenler, tüm web sayfasında görülebilen "global" kapsamdadır, bir fonksiyonun içinde bildirilen değişkenler, o fonksiyon için yereldir. Bir geliştirici, değişkenleri bir sayfadan diğerine geçirmek için bir "çerez" ayarlayabilir veya bunları depolamak için arka planda gizli bir çerçeve veya pencere kullanabilir.

    Veri Yapıları

    Ana tür, Perl programlama dili veya Python, Postscript ve Smalltalk sözlüklerindeki karmalara benzer bir ilişkisel dizi veri yapısıdır.

    Öğelere sayılarla veya çağrışımsal adlarla (tanımlanmışlarsa) erişilebilir. Dolayısıyla, aşağıdaki ifadelerin tümü eşdeğer olabilir:

    dizim,
    dizim.kuzey,
    dizim["kuzey"].

    dizi bildirimi

    MyArray = yeni Dizi(365);

    Diziler, yalnızca belirli (boş olmayan) öğelerin belleği kullanması için uygulanır, bunlar "boş diziler". myArray = "orada bir şey" ve myArray = "orada başka bir şey" ayarlarsak, o zaman sadece bu iki öğe için boşluk kullandık.

    nesneler

    JavaScript'te Object, Array, String, Number, Boolean, Function, Date ve Math gibi çeşitli yerleşik nesneler bulunur. Diğer nesneler DOM nesnelerine aittir (pencereler, formlar, bağlantılar vb.).

    Yapıcı işlevleri tanımlayarak nesneleri tanımlayabilirsiniz. JavaScript, prototiplere dayalı nesne yönelimli bir dildir. Oluşturulduktan sonra tek tek nesnelere ek özellikler ve yöntemler ekleyebilirsiniz. Bunu yapmak için, belirli bir tek tip nesnenin tüm örnekleri için, prototip ifadesini kullanabilirsiniz.

    Örnek: Bir nesne oluşturma
    // Yapıcı işlevi

    İşlev Nesnem(öznitelikA, öznitelikB) ( this.öznitelikA = öznitelikA this.öznitelikB = öznitelikB )
    // bir nesne oluştur
    obj = new MyObject("kırmızı", 1000)

    // Bir nesne özniteliğine erişin
    alert(obj.attributeA)

    // İlişkili dizi notasyonu ile özniteliğe erişim
    alert(nesne["öznitelikA"])

    Nesne hiyerarşisi, JavaScript'te de yeniden üretilebilir. Örneğin:

    Base() işlevi ( this.Override = _Override; this.BaseFunction = _BaseFunction; function _Override() ( alert("Base::Override()"); ) function _BaseFunction() ( alert("Base::BaseFunction()") işlev ); ) ) function Derive() ( this.Override = _Override; function _Override() ( alert("Derive::Override()"); ) ) Derive.prototype = new Base(); d = yeni Derive(); d.Geçersiz Kılma(); d.BaseFunction();

    Sonuç olarak karşımıza Derive::Override() Base::BaseFunction() çıkıyor.

    Kontrol Talimatları
    If ... else if (koşul) ( ifadeler )
    Döngüler
    while (koşul) ( ifadeler ) Do ... while do ( ifadeler ) while (koşul); For döngüsü for (; ; ) ( ifadeler ) For döngüsü ... in
    Bu döngü, bir nesnenin (veya bir dizideki bir öğenin) tüm özelliklerinden geçer.
    for (nesnedeki değişken) ( ifade )

    Ekstre seçin
    switch (ifade) ( case etiketi1: ifadeler; ara; durum etiketi2: ifadeler; ara; varsayılan: ifadeler; )

    Fonksiyonlar
    Fonksiyonun gövdesi içine alınır (gövde boş olabilir) ve bağımsız değişken listesi, fonksiyon adının ardından () içinde belirtilir. İşlevler yürütüldükten sonra bir değer döndürebilir.

    function(arg1, arg2, arg3) ( ifadeler; dönüş ifadesi; )

    Örnek olarak, Öklid en büyük ortak bölen algoritmasına dayalı bir işlevi analiz edelim:

    gcd(a, b) işlevi ( while (a != b) ( if (a > b) ( a = a - b; ) else ( b = b - a; ) ) a döndür; )

    Belirli bir işlev çağrılırken argüman sayısının, işlev bildirildiğinde belirtilen sayıda argüman sağlaması gerekmez. Bir işlevde, bağımsız değişkenlere bir dizi bağımsız değişken aracılığıyla da erişilebilir.

    Her işlev, bir işlevin örneğidir, bir nesnenin temel tipidir. İşlevler, diğer herhangi bir nesne gibi oluşturulabilir ve atanabilir:

    Var myFunc1 = new Function("alert("Merhaba")"); var myFunc2 = myFunc1; myFunc2();

    Ekran sonucu:

    Kullanıcı etkileşimi

    Çoğu kullanıcı etkileşimi, HTML DOM aracılığıyla erişilebilen HTML formları aracılığıyla yapılır. Ancak, kullanıcıyla iletişim kurmanın çok basit bazı yolları da vardır:

    Uyarı İletişim Kutusu
    Onay iletişim kutusu
    İletişim kutusu satırları
    Durum çubuğu
    konsollar

    Metin öğeleri, bir EMCAScript olay işleyicisi kayıtlıysa eylemleri tetikleyebilen çeşitli olayların kaynağı olabilir. HTML'de, bu olay işleyici işlevleri genellikle doğrudan HTML etiketleri içinde anonim işlevler olarak tanımlanır.

    Github istatistiklerine göre şu anda Python, PHP ve Ruby'den sonra Java ve JavaScript en popüler programlama dilleri. İsim benzerliğine rağmen çok farklı dillerdir. JavaScript'in Java'nın daha basit, daha hafif bir sürümü olduğunu düşünebilirsiniz. Ama yanılıyorsun. Bunlar, farklı şeyler yapmanıza izin veren tamamen farklı iki tam teşekküllü programlama dilidir, ancak aynı zamanda benzerliklerden çok farklılıkları vardır.

    Bu yazıda, sorunlarınızı çözmek için en iyi dili seçmenize yardımcı olmak için java ve javascript arasındaki farkı analiz edeceğiz. Göreceğiniz gibi, her iki dil de nadiren aynı görevler için kullanılıyor.

    İlk geliştirmeden sonra kod adı "Oak" ve "Green" olan Java'nın ilk sürümü Mayıs 1995'te yayınlandı. O zamanlar pek çok programcı, benzer sözdizimine ve yeni kavramlara sahip olduğu için C/C++'ın yerine geçtiğini düşündü. Dil, programlamayı daha kolay ve daha güvenli hale getirdi.

    O zamanlar doğan ve şimdi var olan Java'nın temel ilkelerinden biri, programcıların kodu bir kez yazıp her yerde kullanabilecekleri fikridir. Farklı platformlar için farklı bir biçime sahip olan derlenmiş yürütülebilir dosyaların aksine, Java kodu, Java etkin herhangi bir ortamda çalıştırılabilen tek bir JAR dosyasında derlenir.

    Bu, Java Makinesi (JVM) tarafından mümkün kılınmıştır. Java makinesi, işletim sistemi ile Jar dosyası arasında aracı görevi gören yaygın bir programdır. Java talimatlarını içeren bir program dosyasını okur ve bunları çalışma zamanında üzerinde çalıştığı platform için talimatlara dönüştürür. Bu işleme Tam zamanında derleme veya JIT denir.

    JavaScript nedir?

    JavaScript, HTML form sınırlayıcıları oluşturmak için basit bir dil olarak ortaya çıktı. Netscape Communications daha dinamik bir web'e ihtiyaç duyduklarına karar verdiğinde, doğrudan HTML'nin içinde kullanılabilecek yeni bir dil yarattı. Bu dile LiveScript adı verildi ve on günde geliştirildi.

    Dil daha sonra bir süre bu ad altında gelişti, ancak daha sonra adı değiştirmek için birkaç neden vardı. İlk olarak, JavaScript ve Java birbirini tamamlamalıydı, bu nedenle JavaScript benzer bir sözdizimine sahipti ve ikincisi, o zamanlar Java çok popülerdi ve bu nedenle geliştiriciler, dile daha fazla insan çekmek için bir kuyu kullanmaya karar verdiler. adında bilinen kelime ve Java'da Live'ın yerini aldı. JavaScript böyle doğdu. Ancak dillerde sadece sözdizimi benzer, daha sonra Java internette giderek daha az kullanıldı ve dillerin yolları farklılaştı. Artık HTML, CSS ve JavaScript, web geliştirmenin ana bileşenleridir.

    Derleyen Java'dan farklı olarak, JavaScript tamamen yorumlanmış bir dildir. JavaScript kullanan bir siteyi ziyaret ettiğinizde, tarayıcınız programın tam kaynak kodunu alır. Ayrıca, JavaScript motoru kullanılarak anında yürütülür. Farklı tarayıcılar farklı motorlar kullanır: V8 (Chrome), SpiderMonkey (Firefox), Chakra (Edge) vb.

    Java veya JavaScript'in benzer yönleri

    Tüm farklılıklara rağmen, bu dillerin, web geliştirme için her iki dili de kullanmayı düşünmeseniz bile dikkate alınabilecek birkaç benzerliği vardır. İşte ana olanlar:

    • Nesne Yönelimli Programlama (OOP) Her iki dil de programcının kodlama yaparken nesnelerin ilkelerini ve aralarındaki ilişkileri kullanmasını gerektirir. Her iki dil de arayüzler, kapsülleme ve polimorfizm gibi OOP kalıplarını destekler.
    • Fortend Geliştirme - Her iki dil de bir fortend, başka bir deyişle bir sunucunun yanında çalışan bir kullanıcı arabirimi geliştirmek için kullanılabilir. JavaScript, HTML'ye veya site sayfalarında üçüncü taraf bir kitaplık olarak gömülebilir. Ve Java, tarayıcıda bir Java uygulaması olarak çalışabilir.
    • Arka uç geliştirme - başka bir deyişle - sunucu yazılımı geliştirme. Java, Apache, JBoss, WebSphere projeleri tarafından arka uç teknolojilerinde uzun süredir kullanılmaktadır. Yeni bir teknoloji olan Node.js, JavaScript ile yazılmış sunucuları çalıştırmanıza olanak tanır.
    Ana Farklar Java ve JavaScript

    Başlangıçta, tamamen farklı sorunları çözmek için diller geliştirildi. Java daha çok tam teşekküllü uygulamalar oluşturmak için tasarlanmıştır, JavaScript ise web'de bir arayüz düzenlemek için bir betik dilidir. Java ve javascript arasındaki farkı anlamayı kolaylaştırmak için başlıca farklar şunlardır:

    • Derlenebilirlik ve yorumlama - yukarıda yazdığım gibi, Java derlenmiş bir programlama dilidir ve JavaScript yorumlanmış bir dildir. Fark sadece uygulamada, aslında her iki dil de farklı platformlarda çalıştırılabilir.
    • Statik ve dinamik tip kontrolü - Java, statik tip kontrolü kullanır. Bir değişkenin türü derleme zamanında kontrol edilir. Programcı, değişkenin ne tür olacağını açıkça belirtmelidir - bir dizi, bir sayı, bir kayan noktalı sayı vb.). Diğer betik dilleri gibi JavaScript de dinamik yazmayı kullanır. Türlerin doğru kullanımı çalışma zamanında kontrol edilir. Programcının, değişkeni bildirirken değişkenin türünü belirtmesine gerek yoktur. Her iki yaklaşımın da birçok avantajı ve dezavantajı vardır. Java ve javascript arasındaki en önemli fark, statik yazımda hataların çoğunun geliştirme aşamasında ortaya çıkmasıdır, çünkü derleyici ne bekleyeceğini bilir, kod daha hızlı çalışır ve daha az bellek tüketir. Dinamik yazmanın avantajı, programların daha hızlı ve daha kolay yazılmasıdır.
    • Eşzamanlılık - aynı anda birden fazla talimat dizisini yürütme yeteneğinin uygulanması Java ve JavaScript'te çok farklıdır. Java, birden çok iş parçacığının paralel görevler yürütmesine izin verir. JavaScript'te paralelliğin uygulanması çok karmaşıktır. Yalnızca Node.js'de kullanılabilir. Ana iş parçacığında, olay döngüsü adı verilen bir çalıştırma kuyruğu aracılığıyla uygulanır. Her iki yöntem de iyi çalışır, ancak Java akışları daha hızlıdır.
    • Sınıflar ve Nesneler - Java, sınıfları ve aralarındaki ilişkileri kullanır. Bir nesnenin özellikleri sınıfta tanımlanır ve sınıfın değişmez bir parçasıdır. Sınıfları diğer sınıflardan miras alabilir ve ardından ebeveynlerinin tüm özelliklerini alabilirler. Şaşıracaksınız, ancak JavaScript'te sınıf yok. Sadece nesneler var. Ve miras farklı şekilde uygulanır. Tüm nesneler doğrudan diğer nesnelerden miras alabilir. Bunu yapmak için, istediğiniz nesneyi bir prototip olarak belirtmeniz yeterlidir.
    Kullanmak için en iyi zaman ne zaman?

    Diğer tüm dillerde olduğu gibi, Java ve JavaScript seçiminiz birçok faktöre bağlı olacaktır. Örneğin, ne yaratmak istediğiniz ve bunun için hangi kaynaklara sahip olduğunuz. JavaScript, web teknolojileri için daha uygundur, Java ise normal programlar ve diğer her şey oluşturmak için idealdir.

    Aşağıdakileri geliştirirseniz Java'yı seçmek daha iyidir:

    • Android uygulama;
    • Ticari yazılım;
    • Bilimsel hesaplama için yazılım;
    • Büyük Veri analiz yazılımı;
    • Genel amaçlı yazılım veya güvenlik araçları;
    • Sunucu programları.

    Bu tür alanlarda javaScript kullanmak daha iyidir:

    • Dinamik Tek Sayfa Uygulamaları (SPA);
    • İleri teknoloji uygulamalar (Query, AngularJS, Backbone.js, Ember.js, ReactJS);
    • Sunucu uygulamaları (Node.js, MongoDB, Express.js ve benzeri);
    • Mobil uygulamalar (PhoneGap, Ract Native, vb.).
    sonuçlar

    Bu yazımızda java ve javascript arasındaki farkı inceledik. Gördüğünüz gibi, dillerin benzer bir ada sahip olmasına rağmen pek çok farklılık var. Hangisi daha iyi java mı yoksa javascript mi ​​sorusuna cevap vermek zor çünkü dillerin kapsamları çok farklı. Umarım bu bilgi size yardımcı olmuştur.

    Videonun sonunda, Game of Thrones'a dayanan Java ve JavaScript arasındaki yüzleşmeyle ilgili şaka: