JavaScript Değişkeni: Örnekle Bir Değeri Bildirme, Atama
⚡ Akıllı Özet
JavaKomut dosyası değişkenleri, adlar ve sayılar gibi değerleri veya bir ifadenin sonucunu saklar. Bir değişkeni `var`, `let` veya `const` ile bildirmek, komut dosyasının geri kalanının okuyup güncelleyebileceği adlandırılmış bir alanı ayırır.

Değişkenler, değerleri (isim = “John”) veya ifadeleri (toplam = x + y) saklamak için kullanılır. Bir komut dosyasının daha sonra kullanmak üzere sakladığı her değer (kullanıcı adı, toplam, evet-hayır işareti gibi) bir değişkende bulunur; bu nedenle, değişkenleri doğru bir şekilde tanımlamak ve adlandırmak, öğrenilmesi gereken ilk beceridir. JavaSenaryo.
Değişkenleri Bildirin JavaSenaryo
Bir değişkeni kullanmadan önce, öncelikle onu tanımlamanız gerekir. Bir değişkeni şu şekilde tanımlamak için `var` anahtar kelimesini kullanmalısınız:
var name;
Bildirim tek başına sadece adı oluşturur, başka bir şey yapmaz. Bu noktada değişken mevcuttur ancak henüz içine bir değer atanmadığı için özel olarak "tanımlanmamış" değerini tutar.
⚠️ Sürüm notu: `var` orijinal bildirim anahtar kelimesidir ve hala her tarayıcıda çalışır. ES6 (2015) bunu ekledi. izin hem de constmodern kelimesinin anahtar kelimeleri JavaKomut dosyası kullanımları. Her ikisi de bu sayfanın aşağısında bulunan değişkenle karşılaştırılmıştır.
Değişkene Değer Atama
Değişkene, değişkeni bildirirken veya değişkeni bildirdikten sonra bir değer atayabilirsiniz.
var name = "John";
OR
var name; name = "John";
Her iki yöntem de aynı sonuçla biter. Tek eşittir işareti ise... atama operatörüSağdaki değeri solundaki değişkene kopyalar. Eşitlik testi değildir; eşitlik testi == veya === şeklinde yazılır ve ilgili bölüme aittir. koşullu ifadeler.
Değişkenleri Adlandırma
Değişkenlere istediğiniz gibi isim verebilirsiniz, ancak değişkenlere açıklayıcı ve anlamlı isimler vermek iyi bir programlama uygulamasıdır. Ayrıca, değişken isimleri bir harfle başlamalı ve büyük/küçük harf duyarlı olmalıdır. Bu nedenle, studentname ve studentName değişkenleri farklıdır çünkü isimdeki n harfi farklıdır (n ve N).
Bir ismin yasal olup olmadığını belirleyen dört kural vardır:
- İlk karakter bir harf, dolar işareti veya alt çizgi olmalıdır; asla rakam olamaz.
- İlk karakterden sonra harfler, rakamlar, dolar işaretleri ve alt çizgiler kullanılabilir.
- Boşluklara izin verilmediği için, iki kelimelik bir fikir iki ayrı kelime olarak bırakılmak yerine, öğrenci adı şeklinde birleştiriliyor.
- `var`, `let`, `const`, `class` ve `return` gibi ayrılmış kelimeler isim olarak tekrar kullanılamaz.
Gelenek gereği JavaKomut dosyası adları camelCase kullanır, yani ilk kelime küçük harfle başlar ve sonraki her kelime büyük harfle başlar: firstName, totalPrice, isLoggedIn.
Aşağıdaki kod iki değişken tanımlar, bunlara beş aritmetik operatör uygular ve her sonucu sayfaya yazar. Bunu kendiniz deneyin:
<html>
<head>
<title>Variables!!!</title>
<script type="text/javascript">
var one = 22;
var two = 3;
var add = one + two;
var minus = one - two;
var multiply = one * two;
var divide = one/two;
document.write("First No: = " + one + "<br />Second No: = " + two + " <br />");
document.write(one + " + " + two + " = " + add + "<br/>");
document.write(one + " - " + two + " = " + minus + "<br/>");
document.write(one + " * " + two + " = " + multiply + "<br/>");
document.write(one + " / " + two + " = " + divide + "<br/>");
</script>
</head>
<body>
</body>
</html>
Modern programlamada var, let ve const karşılaştırması JavaSenaryo
Sadece var olduğunda Javaİlk olarak yazılan bu betik, yeni başlayanları şaşırtan iki özelliğe sahip: sessizce yeniden tanımlanabiliyor ve blok sınırlarını dikkate almıyor. Bu iki sorunu gidermek için `let` ve `const` eklendi. Aşağıdaki tabloda bu üç anahtar kelime yan yana gösterilmiştir.
| Davranış | var | izin | const |
|---|---|---|---|
| kapsam | Bütün fonksiyon | Çevreleyen blok | Çevreleyen blok |
| Yeniden atanabilir | Evet | Evet | Yok hayır |
| Aynı kapsamda yeniden tanımlanabilir. | Evet | Yok hayır | Yok hayır |
| Beyan satırında gerekli değer | Yok hayır | Yok hayır | Evet |
| Bildirilmeden önce okuyun | Tanımlanmamış değer döndürür. | Referans Hatası | Referans Hatası |
Basit bir alışkanlık neredeyse her durumu kapsar: uzanıp almak... const Öncelikle, şuna geçin: izin Bir değerin gerçekten değişmesi gereken an, örneğin bir mağazanın içindeki bir sayacın değeri gibi. JavaKomut dosyası döngüleriVe yeni kod yazmak yerine eski kodu okumak için `var` değişkenini saklayın.
Değişken Kapsamlı ve Kaldırma İşlemleri JavaSenaryo
Kapsam, bir değişkenin hangi kod parçacığı bölümlerinde görülebileceğine karar verir. Bir `var` bildirimi, onu içeren fonksiyona aittir, bu nedenle o fonksiyon içindeki herhangi bir `if` veya `for` bloğundan bağımsızdır. Bir `let` veya `const` bildirimi, içinde bulunduğu parantez çiftine aittir ve bunların dışında kaybolur.
function demo() { if (true) { var wide = "visible throughout demo()"; let narrow = "visible only inside these braces"; } console.log(wide); console.log(narrow); }
İlk console.log çıktısı metnini yazdırır. İkincisi ise ReferenceError hatası verir, çünkü if bloğu sona erdiğinde narrow değişkeni artık mevcut değildir.
kaldırma Bu, hikayenin ikinci yarısıdır. JavaKomut dosyası, bir kapsamdaki her bildirimi, o kapsamın tek bir satırını çalıştırmadan önce kaydeder. Bir değişken adı kaydedilir ve tanımsız olarak ayarlanır, bu nedenle erken okunması yasaldır ancak işe yaramaz. Bir let veya const adı değer olmadan kaydedilir ve bloğun başı ile bildirim satırı arasındaki boşluğa "boşluk" denir. zamansal ölü bölge.
console.log(a); var a = 1; console.log(b); let b = 2;
İlk satırda "undefined" yazdırılıyor. Üçüncü satırda ise "Cannot access 'b' before initialization" hatasıyla karşılaşıyoruz; bu hata, let operatörünü var operatöründen daha güvenli kılıyor çünkü hatayı gizlemek yerine gerçek hataya işaret ediyor.
Bildirimde Sık Yapılan Hatalar JavaKomut dosyası değişkenleri
Değişkenleri öğrenirken yeni başlayanların konsol çıktısında gördüğü mesajların çoğu beş tanedir. Her biri belirli bir nedeni belirtir, bu nedenle çözüm genellikle tek bir satırda bulunur.
| Konsol mesajı | Sebeb olmak | sabit |
|---|---|---|
| Sözdizimi Hatası: 'x' tanımlayıcısı zaten tanımlanmış. | Bir kod bloğunda aynı isim için iki kez kullanılan `let` veya `const` ifadesi | Mevcut değişkeni yeniden kullanın veya ikinci değişkeni yeniden adlandırın. |
| TypeError: Sabit değişkene atama | Bir sabite yeni bir değer atandı. | Değerin değişmesi gerekiyorsa, `let` ile tanımlayın. |
| ReferenceError: Başlatılmadan önce 'x'e erişilemiyor. | Geçici ölü bölge içinde bir `let` veya `const` okundu. | Okuma işlemini bildirim satırının altına taşıyın. |
| ReferenceError: x tanımlanmamış | İsim hiç açıklanmadı veya yanlış yazıldı. | Doğruluğunu belirtin veya yazım hatasını ve büyük/küçük harf kullanımını düzeltin. |
| Beklenen değerin yerine tanımsız bir değer görünüyor. | Değişken tanımlandı ancak hiçbir zaman değer atanmadı. | İlk okumadan önce bir değer atayın. |
Bir dosyanın başına "use strict" eklemek, dördüncü durumun sessiz versiyonunu (hiç tanımlanmamış bir isme değer atama) görünür bir hataya dönüştürür; bu nedenle her yeni betikte yer almalıdır. Aynı değişken kuralları, değişmeden diğer dosyalara da aktarılır. diziler, nesnelerve sunucu tarafında yazılmış kod node.js.
