JS Eğitimi

ANA SAYFA JS Giriş JS Nereye JS Çıktı JS İfadeleri JS Sözdizimi JS Yorumları JS Değişkenleri JS Let JS Sabiti JS Operatörleri JS Aritmetiği JS Ataması JS Veri Türleri JS Fonksiyonları JS Nesneleri JS Etkinlikleri JS Dizeleri JS Dize Yöntemleri JS Dizisi Arama JS Dize Şablonları JS Numaraları JS Numarası Yöntemleri JS Dizileri JS Dizi Yöntemleri JS Dizi Sıralaması JS Dizi Yineleme JS Dizi Sabiti JS Tarihleri JS Tarih Formatları JS Tarih Alma Yöntemleri JS Tarih Ayar Yöntemleri JS Matematik JS Rastgele JS Booleanları JS Karşılaştırmaları JS Koşulları JS Anahtarı JS Döngüsü İçin JS Döngüsü İçin JS Döngüsü JS Döngüsü JS Arası JS Yinelenebilirler JS Setleri JS Haritaları JS Türü JS Tipi Dönüşüm JS Bitsel JS Normal İfade JS Hataları JS Kapsamı JS Kaldırma JS Sıkı Modu Bu Anahtar Kelimeyi JS JS Ok İşlevi JS Sınıfları JS JSON JS Hata Ayıklama JS Stil Kılavuzu JS En İyi Uygulamaları JS Hataları JS Performansı JS Ayrılmış Kelimeler

JS Sürümleri

JS Sürümleri JS 2009 (ES5) JS 2015 (ES6) JS 2016 JS 2017 JS 2018 JS IE / Kenar JS Geçmişi

JS Nesneleri

Nesne Tanımları Nesne Özellikleri Nesne Yöntemleri Nesne Görüntüleme Nesne Erişimcileri Nesne Oluşturucuları Nesne Prototipleri Nesne Yinelenebilirler Nesne Kümeleri Nesne Haritaları Nesne Referansı

JS Fonksiyonları

Fonksiyon Tanımları Fonksiyon Parametreleri Fonksiyon Çağırma İşlev Çağrısı İşlev Uygula Fonksiyon Kapanışları

JS Sınıfları

Sınıf Tanıtımı Sınıf Kalıtımı Sınıf Statik

JS Zaman uyumsuz

JS Geri Aramaları JS Asenkron JS Sözleri JS Zaman uyumsuz/Bekliyor

JS HTML DOM'si

DOM Tanıtımı DOM Yöntemleri DOM Belgesi DOM Öğeleri DOM HTML'si DOM Formları DOM CSS'si DOM Animasyonları DOM Olayları DOM Olay Dinleyicisi DOM Gezinme DOM Düğümleri DOM Koleksiyonları DOM Düğüm Listeleri

JS Tarayıcı Malzeme Listesi

JS Penceresi JS Ekranı JS Konumu JS Geçmişi JS Navigatörü JS Açılır Pencere Uyarısı JS Zamanlaması JS Çerezleri

JS Web API'leri

Web API'sine Giriş Web Formları API'sı Web Geçmişi API'si Web Depolama API'sı Web Çalışanı API'si Web Getirme API'si Web Coğrafi Konum API'sı

JS AJAX

AJAX'a Giriş AJAX XMLHttp AJAX İsteği AJAX Yanıtı AJAX XML Dosyası AJAX PHP AJAX ASP AJAX Veritabanı AJAX Uygulamaları AJAX Örnekleri

JS JSON

JSON'a Giriş JSON Sözdizimi JSON'a karşı XML JSON Veri Türleri JSON Ayrıştırma JSON Stringify JSON Nesneleri JSON Dizileri JSON Sunucusu JSON PHP JSON HTML'si JSON JSONP

JS ve jQuery

jQuery Seçiciler jQuery HTML'si jQuery CSS'si jQuery DOM'si

JS Grafikleri

JS Grafikleri JS Tuval JS Konusu JS Chart.js JS Google Grafiği JS D3.js

JS Örnekleri

JS Örnekleri JS HTML DOM'si JS HTML Girişi JS HTML Nesneleri JS HTML Olayları JS Tarayıcı JS Editörü JS Alıştırmaları JS Testi JS Sertifikası

JS Referansları

JavaScript Nesneleri HTML DOM Nesneleri


JavaScript Numaraları


JavaScript'in yalnızca bir tür numarası vardır. Sayılar ondalıklı veya ondalıksız yazılabilir.


Örnek

let x = 3.14;    // A number with decimals
let y = 3;       // A number without decimals

Çok büyük veya çok küçük sayılar bilimsel (üslü) gösterimle yazılabilir:

Örnek

let x = 123e5;    // 12300000
let y = 123e-5;   // 0.00123


JavaScript Numaraları Daima 64-bit Kayan Noktadır

Diğer birçok programlama dilinden farklı olarak JavaScript, tamsayılar, kısa, uzun, kayan nokta vb. gibi farklı sayı türlerini tanımlamaz.

JavaScript numaraları, uluslararası IEEE 754 standardına uygun olarak her zaman çift duyarlıklı kayan noktalı sayılar olarak saklanır.

Bu biçim, sayıları 64 bit olarak saklar; burada sayı (kesir) 0 ila 51 bitlerinde, üs 52 ila 62 bitlerinde ve işaret bit 63'te saklanır:

Değer (aka Kesir/Mantis) üs İşaret
52 bit (0 - 51)  11 bit (52 - 62) 1 bit (63)

Tamsayı Hassasiyeti

Tam sayılar (nokta veya üs gösterimi olmayan sayılar) 15 basamağa kadar doğrudur.

Örnek

let x = 999999999999999;   // x will be 999999999999999
let y = 9999999999999999;  // y will be 10000000000000000

Maksimum ondalık sayı 17'dir.

Yüzer Hassasiyet

Kayan nokta aritmetiği her zaman %100 doğru değildir:

let x = 0.2 + 0.1;

Yukarıdaki sorunu çözmek için çarpmaya ve bölmeye yardımcı olur:

let x = (0.2 * 10 + 0.1 * 10) / 10;


Sayılar ve Dizeler Ekleme

UYARI !!

JavaScript, hem ekleme hem de birleştirme için + operatörünü kullanır.

Numaralar eklenir. Dizeler birleştirilir.

İki sayı eklerseniz, sonuç bir sayı olacaktır:

Örnek

let x = 10;
let y = 20;
let z = x + y;

İki dize eklerseniz, sonuç bir dize bitiştirme olacaktır:

Örnek

let x = "10";
let y = "20";
let z = x + y;

Bir sayı ve bir dize eklerseniz, sonuç bir dize bitiştirme olacaktır:

Örnek

let x = 10;
let y = "20";
let z = x + y;

Bir dize ve bir sayı eklerseniz, sonuç bir dize bitiştirme olacaktır:

Örnek

let x = "10";
let y = 20;
let z = x + y;

Bu sonucun 30 olmasını beklemek yaygın bir hatadır:

Örnek

let x = 10;
let y = 20;
let z = "The result is: " + x + y;

Bu sonucun 102030 olmasını beklemek yaygın bir hatadır:

Örnek

let x = 10;
let y = 20;
let z = "30";
let result = x + y + z;

JavaScript yorumlayıcısı soldan sağa doğru çalışır.

İlk 10 + 20 eklenir çünkü x ve y'nin ikisi de sayıdır.

Ardından, z bir dize olduğu için 30 + "30" birleştirilir.


Sayısal Diziler

JavaScript dizeleri sayısal içeriğe sahip olabilir:

let x = 100;         // x is a number

let y = "100";       // y is a string

JavaScript, tüm sayısal işlemlerde dizeleri sayılara dönüştürmeye çalışır:

Bu çalışacak:

let x = "100";
let y = "10";
let z = x / y;

Bu da işe yarayacaktır:

let x = "100";
let y = "10";
let z = x * y;

Ve bu işe yarayacak:

let x = "100";
let y = "10";
let z = x - y;

Ama bu işe yaramayacak:

let x = "100";
let y = "10";
let z = x + y;

Son örnekte JavaScript, dizeleri birleştirmek için + operatörünü kullanır.


NaN - Sayı Değil

NaN bir sayının yasal bir sayı olmadığını belirten JavaScript'e ayrılmış bir kelimedir.

Sayısal olmayan bir dizeyle aritmetik yapmaya çalışmak NaN(Sayı Değil):

Örnek

let x = 100 / "Apple";

Ancak, dize sayısal bir değer içeriyorsa sonuç bir sayı olacaktır:

Örnek

let x = 100 / "10";

isNaN() Bir değerin sayı olup olmadığını öğrenmek için global JavaScript işlevini kullanabilirsiniz:

Örnek

let x = 100 / "Apple";
isNaN(x);

Dikkat edin NaN. NaNMatematiksel bir işlemde kullanırsanız , sonuç da şöyle olacaktır NaN:

Örnek

let x = NaN;
let y = 5;
let z = x + y;

Veya sonuç, NaN5 gibi bir birleştirme olabilir:

Örnek

let x = NaN;
let y = "5";
let z = x + y;

NaNbir sayıdır: typeof NaNdöndürür number:

Örnek

typeof NaN;

Sonsuzluk

Infinity(veya -Infinity), mümkün olan en büyük sayının dışında bir sayı hesaplarsanız JavaScript'in döndüreceği değerdir.

Örnek

let myNumber = 2;
// Execute until Infinity
while (myNumber != Infinity) {
  myNumber = myNumber * myNumber;
}

0'a (sıfır) bölme ayrıca şunları üretir Infinity:

Örnek

let x =  2 / 0;
let y = -2 / 0;

Infinitybir sayıdır: typeof Infinitydöndürür number.

Örnek

typeof Infinity;

onaltılık

JavaScript, sayısal sabitleri, başında 0x varsa, onaltılık olarak yorumlar.

Örnek

let x = 0xFF;

Asla başında sıfır olan bir sayı yazmayın (07 gibi).
Bazı JavaScript sürümleri, başta sıfır ile yazılmışsa sayıları sekizli olarak yorumlar.

Varsayılan olarak JavaScript, sayıları 10 tabanlı ondalık basamak olarak görüntüler.

Ancak, 2 tabanından 36 tabanına kadar sayılarıntoString() çıktısını almak için yöntemi kullanabilirsiniz .

Onaltılık taban 16'dır . Ondalık taban 10'dur . Sekizli taban 8'dir . İkili taban 2'dir .

Örnek

let myNumber = 32;
myNumber.toString(10);
myNumber.toString(32);
myNumber.toString(16);
myNumber.toString(8);
myNumber.toString(2);

Nesne Olarak JavaScript Numaraları

Normalde JavaScript numaraları, değişmez değerlerden oluşturulan ilkel değerlerdir:

let x = 123;

Ancak sayılar, anahtar kelimeyle nesneler olarak da tanımlanabilir new:

let y = new Number(123);

Örnek

let x = 123;
let y = new Number(123);

Number nesneleri oluşturmayın.

Anahtar newkelime, kodu karmaşıklaştırır ve yürütme hızını yavaşlatır.

Sayı Nesneleri beklenmeyen sonuçlar üretebilir:

Operatörü kullanırken ==, x ve y eşittir :

let x = 500;
let y = new Number(500);

Operatörü kullanırken ===, x ve y eşit değildir .

let x = 500;
let y = new Number(500);

(x==y)ve arasındaki farka dikkat edin (x===y).

(x == y) doğru ya da yanlış?

let x = new Number(500);
let y = new Number(500);

(x === y) doğru ya da yanlış?

let x = new Number(500);
let y = new Number(500);

Comparing two JavaScript objects always returns false.

Complete JavaScript Number Reference

For a complete Number reference, visit our:

Complete JavaScript Number Reference.

The reference contains descriptions and examples of all Number properties and methods.