Bu eğitimde, örnekler yardımıyla JavaScript Numarası hakkında bilgi edineceksiniz.
JavaScript'te sayılar ilkel veri türleridir. Örneğin,
const a = 3; const b = 3.13;
Diğer bazı programlama dillerinden farklı olarak, int , float , vb. Kullanarak tamsayı veya kayan değerler için özel olarak bildirmeniz gerekmez .
Çok büyük veya çok küçük sayıları dahil etmek için üstel gösterimi e kullanabilirsiniz . Örneğin,
const a1 = 5e9; console.log(a1); //5000000000 const a2 = 5e-5; console.log(a2); // 0.00005
Sayılar ayrıca onaltılık gösterimle de gösterilebilir. Örneğin,
const a = 0xff; console.log(a); // 255 const b = 0x00 ; console.log(b); // 0
+ Numaralı Operatör
Ne zaman +
sayılarla kullanılır, numara eklemek için kullanılır. Örneğin,
const a = 4 + 9; console.log(a); // 13
Ne zaman +
numaraları ve dizeleri kullanıldığında, onları birleştirmek için kullanılan olduğunu. Örneğin,
const a = '4' + 9; console.log(a); // 49
Diğer sayısal işlemlerle birlikte bir sayısal dizge kullanıldığında, sayısal dizge bir sayıya dönüştürülür. Örneğin,
const a = '4' - 2; console.log(a); // 2 const a = '4' / 2; console.log(a); // 2 const a = '4' * 2; console.log(a); // 8
JavaScript NaN
JavaScript'te NaN
(Sayı Değil), değerin bir sayı olmadığını belirten bir anahtar sözcüktür.
+
Dize ile sayısal değere aritmetik işlemler (hariç ) gerçekleştirmek NaN
. Örneğin,
const a = 4 - 'hello'; console.log(a); // NaN
Yerleşik işlev isNaN()
, bir değerin sayı olup olmadığını bulmak için kullanılabilir. Örneğin,
const a = isNaN(9); console.log(a); // false const a = isNaN(4 - 'hello'); console.log(a); // true
Zaman typeof
operatör için kullanılan NaN
değer, bir sayı çıkış verir. Örneğin,
const a = 4 - 'hello'; console.log(a); // NaN console.log(typeof a); // "number"
JavaScript Infinity
JavaScript'te, olası en büyük (veya en küçük) sayıyı aşan hesaplama yapıldığında Infinity
(veya -Infinity
) döndürülür. Örneğin,
const a = 2 / 0; console.log(a); // Infinity const a = -2 / 0; console.log(a); // -Infinity
JavaScript BigInt
JavaScript'inizde Numara türü sadece az sayıda temsil edebilir (2 53 - 1) ve en fazla - (2 53 - 1) . Bununla birlikte, bundan daha büyük bir sayı kullanmanız gerekirse, BigInt veri türünü kullanabilirsiniz.
Bir BigInt numarası, bir tamsayının sonuna n eklenerek oluşturulur . Örneğin,
// BigInt value const value = 900719925124740998n; // Adding two big integers const value1 = value + 1n; console.log(value1); // returns "900719925124740999n"
Not: BigInt, JavaScript'in daha yeni sürümünde tanıtıldı ve birçok tarayıcı tarafından desteklenmiyor. Daha fazla bilgi edinmek için JavaScript BigInt desteğini ziyaret edin.
JavaScript Numaraları 64-bit Olarak Saklanır
JavaScript'te sayılar, "çift duyarlıklı kayan noktalı sayılar" olarak da bilinen 64-bit IEEE-754 biçiminde saklanır.
Numaralar 64 bit olarak saklanır (sayı 0 ila 51 bit pozisyonlarında, üs 52 ila 62 bit pozisyonlarında ve işaret 63 bit pozisyonunda saklanır).
Sayılar | Üs | İşaret |
---|---|---|
52 bit (0-51) | 11 bit (52-62) | 1 bit (63) |
Hassas Problemler
Kayan nokta sayıları üzerindeki işlemler bazı beklenmedik sonuçlara neden olur. Örneğin,
const a = 0.1 + 0.2; console.log(a); // 0.30000000000000004
Sonuç , 0.30000000000000004 yerine 0.3 olmalıdır . Bu hata, JavaScript'te sayıların dahili olarak ondalık basamakları temsil etmek için ikili biçimde saklanması nedeniyle oluşur. Ve ondalık sayılar tam olarak ikili biçimde temsil edilemez.
Yukarıdaki sorunu çözmek için şuna benzer bir şey yapabilirsiniz:
const a = (0.1 * 10 + 0.2 * 10) / 10; console.log(a); // 0.3
toFixed()
Yöntemi de kullanabilirsiniz .
const a = 0.1 + 0.2; console.log(a.toFixed(2)); // 0.30
toFixed(2)
ondalık sayıyı iki ondalık değere yuvarlar.
const a = 9999999999999999 console.log(a); // 10000000000000000
Not : Tam sayılar 15 haneye kadar doğrudur.
Sayı Nesneleri
new
Anahtar kelimeyi kullanarak da sayılar oluşturabilirsiniz . Örneğin,
const a = 45; // creating a number object const b = new Number(45); console.log(a); // 45 console.log(b); // 45 console.log(typeof a); // "number" console.log(typeof b); // "object"
Not : Sayı nesnelerini kullanmaktan kaçınmanız önerilir. Sayı nesnelerinin kullanılması programı yavaşlatır.
JavaScript Sayı Yöntemleri
JavaScript'teki yerleşik sayı yöntemlerinin listesi aşağıda verilmiştir.
Yöntem | Açıklama |
---|---|
isNaN () | aktarılan değerin NaN olup olmadığını belirler |
isFinite () | aktarılan değerin sonlu bir sayı olup olmadığını belirler |
isInteger () | aktarılan değerin bir tam sayı olup olmadığını belirler |
isSafeInteger () | aktarılan değerin güvenli bir tam sayı olup olmadığını belirler |
parseFloat (dize) | sayısal kayan dizeyi kayan noktalı sayıya dönüştürür |
parseInt (dize, (radix)) | sayısal dizeyi tam sayıya dönüştürür |
toExponential (fractionDigits) | returns a string value for a number in exponential notation |
toFixed(digits) | returns a string value for a number in fixed-point notation |
toPrecision() | returns a string value for a number to a specified precision |
toString((radix)) | returns a string value in a specified radix(base) |
valueof() | returns the numbers value |
toLocaleString() | returns a string with a language sensitive representation of a number |
For example,
// check if a is integer const a = 12; console.log(Number.isInteger(a)); // true // check if b is NaN const b = NaN; console.log(Number.isNaN(b)); // true // display upto two decimal point const d = 5.1234; console.log(d.toFixed(2)); // 5.12
JavaScript Number Properties
Here is a list of Number properties in JavaScript.
Property | Description |
---|---|
EPSILON | returns the smallest interval between two representable numbers |
MAX_SAFE_INTEGER | returns the maximum safe integer |
MAX_VALUE | returns the largest possible value |
MIN_SAFE_INTEGER | returns the minimum safe integer |
MIN_VALUE | returns the smallest possible value |
NaN | represents 'Not-a-Number' value |
NEGATIVE_INFINITY | represents negative infinity |
POSITIVE_INFINITY | pozitif sonsuzluğu temsil eder |
prototip | Number nesnelerine özelliklerin eklenmesine izin verir |
Örneğin,
// largest possible value const a = Number.MAX_VALUE; console.log(a); // 1.7976931348623157e+308 // maximum safe integer const a = Number.MAX_SAFE_INTEGER; console.log(a); // 9007199254740991
JavaScript Numarası () Fonksiyonu
Number()
Fonksiyon numaralarına çeşitli veri türlerini dönüştürmek için kullanılır. Örneğin,
const a = '23'; // string const b = true; // boolean //converting to number const result1 = Number(a); const result2 = Number(b); console.log(result1); // 23 console.log(result2); // 1
Sayı dönüşümü hakkında daha fazla bilgi edinmek istiyorsanız, JavaScript Tür Dönüşümü sayfasını ziyaret edin.