Farklı Veri Türlerini Dönüştürme – Blog Yazma – Web Tasarımı Yapımı – Web Tasarımı YouTube Videosu Yapımı – Web Sitesi Tasarlama Fiyatları
Farklı Veri Türlerini Dönüştürme
Çoğunlukla, JavaScript yorumlayıcısı, hangi veri türlerinin kullanılmasını istediğimizi çözebilir. Aşağıdaki kodda, örneğin yorumlayıcı, 1 ve 2 sayılarının sayı veri türünden olduğunu anlar ve bunlara göre davranır.
JavaScript yorumlayıcısı, iki sayıyı birbirine eklemek yerine, onları bir araya getirdi. Bunun nedeni, istem() işlevinin, dize sayı karakterleri içermesine rağmen, kullanıcı tarafından girilen değeri dize veri türü olarak döndürmesidir. Birleştirme bu satırda gerçekleşir.
userEnteredNumber, 1’den çıkarılır. Çıkarma operatörü, dize verilerine uygulanamaz, bu nedenle JavaScript, verilerin bir sayı olarak ele alınmasını istediğimizi, dizeyi bir sayıya dönüştürdüğünü ve hesaplamayı yaptığını anlar.
Aynısı * ve / operatörleri için de geçerlidir. typeof() operatörü, kendisine iletilen veri türünü döndürür, böylece JavaScript yorumlayıcısının hangi veri türleriyle çalıştığını görmek için bunu kullanabiliriz. Bu, sayfaya dize yazacaktır. Yorumlayıcının istenen sayı veri türünü kullanmasını sağlamanın yolu, verilerin bir sayı olduğunu açıkça beyan etmektir.
Bunu yapmak için kullanabileceğiniz üç işlev vardır:
• Number(): Parantez içindeki değişkenin değerini sayıya dönüştürmeye çalışır.
• parseFloat(): Değeri kayan noktaya dönüştürmeye çalışır. Bir sayıda kullanılamayan bir karakterle karşılaşana kadar dizeyi karakter karakter soldan sağa ayrıştırır. Daha sonra bu noktada durur ve bu diziyi bir sayı olarak değerlendirir. İlk karakter bir sayıda kullanılamıyorsa, sonuç NaN’dir (Sayı Değil anlamına gelir).
• parseInt(): Sayıyı yukarı veya aşağı yuvarlamadan herhangi bir kesirli kısmı kaldırarak değeri bir tam sayıya dönüştürür. İşleve iletilen sayısal olmayan her şey atılacaktır. İlk karakter +, – veya rakam değilse, sonuç NaN olur.
Girilen veriler ilk satırda string olarak okunur. Ardından parseFloat(), 23.50’yi bir dizgeden kayan noktalı bir sayıya dönüştürür ve sonraki satırda parseInt() kesirli kısmı çıkarır (yukarı veya aşağı yuvarlamadan).
Değişken daha sonra Number() işlevi kullanılarak bir sayıya dönüştürülür, userEnteredNumber değişkeninin kendisinde saklanır (orada tutulan dizenin üzerine yazılır) ve son satırda userEnteredNumber’ın veri türünün gerçekten sayı olduğunu görürüz.
Sonuçlar benzer, ancak bu sefer Number() NaN döndürdü. parseFloat() ve parseInt() işlevleri, dizenin olabildiğince çoğunu bir sayıya dönüştürmek için soldan sağa çalıştıkları ve ardından sayısal olmayan bir değere ulaştıklarında durdukları için hala bir sayı döndürür. Number() işlevi, sayısal olmayan karakterler (rakamlar, geçerli bir ondalık basamak ve + ve – işaretlerine izin verilir, ancak başka hiçbir şeye izin verilmez) içeren tüm dizeleri reddeder.
Excel veri türleri ekleme
C# Tür Dönüşümleri
C++ string to int
VBA değişken tanımlama
String int dönüştürme
Visual Basic değişken tanımlama
VBA veri tipleri
VBA Set komutu
İşlevlerin hiçbiri geçerli bir sayı bulamaz ve bu nedenle tümü, bir sayı veri türü olduğunu ancak geçerli bir sayı olmadığını görebildiğimiz NaN değerini döndürür. Bu, kullanıcı girdisinin geçerliliğini kontrol etmenin iyi bir yoludur ve daha sonra tam olarak bunu yapmak için kullanacağız.
O halde başladığımız soruna geri dönelim: bir sayıyı almak için istem()’i kullanmak. Tek yapmamız gereken yorumlayıcıya, kullanıcı tarafından girilen verilerin, komut istemi() işleviyle tartışılan işlevlerden birini kullanarak bir sayı veri türüne dönüştürülmesi gerektiğini söylemektir.
Bu herhangi bir hata vermez, ancak NaN’nin anlamı yaygın bir bilgi olmadığı için ziyaretçiye pek yardımcı olmaz. Daha sonra koşullarla ilgileneceğiz ve JavaScript konusunda bilgili olmayan kullanıcılar için pek bir anlam ifade etmeyen bir çıktıyı nasıl önleyebileceğinizi göreceksiniz.
Ve şimdilik ilkel veri türleri ve değişkenler hakkında bilmeniz gereken tek şey bu. İlkel veri türleri, gördüğünüz gibi, yalnızca bir değer tutar. Ancak JavaScript karmaşık verilerle de ilgilenebilir ve bunu bileşik veri türlerini kullanarak yapar.
Bileşik Veri Türleri: Dizi ve Nesne
Bileşik veri türleri, birden fazla değer tutabildikleri için basit veri türlerinden farklıdır. İki bileşik veri türü vardır:
• Nesne: Tarayıcının kullanıma sunduğu nesneler de dahil olmak üzere herhangi bir nesneye başvuru içerir
• Dizi: Diğer veri türlerinden bir veya daha fazlasını içerir
Önce nesne veri türüne bakacağız. Bölüm 1’deki tartışmadan hatırlayabileceğiniz gibi, nesneler gerçek dünya varlıklarını modeller. Bu nesneler veri tutabilir ve bize özellikler ve yöntemler sağlayabilir.
Nesneler JavaScript Size Şunları Sağlar: Dize, Tarih ve Matematik Bu üç nesne üç farklı şey yapar:
• Dize nesnesi: Bir dize saklar ve dizelerle çalışmak için özellikler ve yöntemler sağlar
• Tarih nesnesi: Bir tarihi saklar ve onunla çalışmak için yöntemler sağlar
• Matematik nesnesi: Veri depolamaz, ancak matematiksel verileri işlemek için özellikler ve yöntemler sağlar. String nesnesiyle başlayalım.
Dize Nesnesi
Daha önce, tutacakları bazı karakterler vererek dize ilkelleri oluşturduk. Bir String nesnesi işleri biraz farklı yapar, yalnızca karakterleri depolamamıza izin vermekle kalmaz, aynı zamanda bu karakterleri işlemek ve değiştirmek için bir yol sağlar. Açıkça veya örtük olarak String nesneleri oluşturabilirsiniz.
Bir Dize Nesnesi Oluşturma
Önce örtük yöntemle çalışalım: Yeni bir değişken bildirmeye başlayacağız ve onu başlatmak için yeni bir ilkel dize atayacağız. myStringPrimitive değişkenindeki verilerin bir dize ilkel olduğundan emin olmak için şimdi typeof() işlevini kullanmayı deneyin.
Yine de üzerinde String nesnesinin yöntemlerini kullanabiliriz. JavaScript, ilkel dizeyi geçici bir String nesnesine dönüştürür, üzerindeki yöntemi kullanır ve ardından veri türünü tekrar dize olarak değiştirir. Bunu String nesnesinin length özelliğini kullanarak deneyebiliriz.
Yani myStringPrimitive, geçici dönüştürmeden sonra hala bir ilkel dize tutuyor. Ayrıca new anahtar sözcüğünü String() yapıcısıyla birlikte kullanarak String nesnelerini açıkça oluşturabiliriz.
Bu betik ile önceki betik arasındaki tek fark, yeni nesneyi oluşturduğumuz ve String nesnesinin saklaması için bazı karakterler sağladığımız ilk satırdadır.
String nesnesini örtük veya açık olarak oluştursak da, length özelliğini kontrol etmenin sonucu aynıdır. Açıkça veya örtük olarak String nesneleri oluşturma arasındaki tek gerçek fark, aynı String nesnesini tekrar tekrar kullanacaksanız, bunları açıkça oluşturmanın marjinal olarak daha verimli olmasıdır. Açıkça String nesneleri oluşturmak, JavaScript yorumlayıcısının, yapabildiği gibi, sayılar ve dizeler arasında kafasının karışmasını önlemeye de yardımcı olur.