في بعض الأحيان وبعض الأفكار تحتاج منها ان نقوم بتحويل انواع البيانات من نوعه السابق لنوع جديد ، مثلاََ تحويل نوع البيانات من نصي إلى رقم أو من رقمي إلى نصي وهذا ما سنتعرف عليه .
let str = "10";
let num = 5;
console.log(str + num); //105
في المثال السابق قمنا بتعرف متغيرات الاول بإسم str
وله قيمة نصية “10” وطبعا هي نصية لانها موجودة بين علامات تنصيص ، من ثم قمنا بتعريف متغير أخر وهو num
وقيمته 5 ، من ثم حاول ان نقوم بجمعهم ومشاهدة الناتج من خلال الكونسول ، ولكن ستفاجىء بأن النتيجة ستكون 105 لانه قام بدمج القيمة 10 مع القيمة 5، ماذا لو أردنا ان يعترف بالمتغير الأول كرقم او ان يقوم بتحويله لرقم حتى نرى ناتج عملية الجمع الصحيح ؟
تحويل القيمة النصية لرقمية من خلال الدالة Number
سنقوم بإعادة المثال السابق ولكن مع بعض التعديلات
let str = "10";
let num = 5;
console.log(Number(str)+ num); //105
لاحظ هذه المرة انه قمنا بكتابة Number()
وقمنا بوضع المتغير النصي داخلها ولاحظ ان اول حرف هنا N حرف كبير ، هذه عبارة عن دالة سنتعرف على هذا المفهوم بشكل اكبر في المقالات القادمة ، ولكن وظيفتها هنا ان تقوم بتحويل القيمة النصية لقيمة رقمية ، ولو قمنا بعمل التالي:
let str = "10";
let strToNum = Number(str);
console.log(typeof strToNum );
في المثال قمنا بعمل متغير نصي وقيمته 10 ، وقمنا بعمل متغير جديد من خلاله يتم تحويل المتغير str
لرقم ، بعد ذلك أردنا معرفة نوع هذا البيانات من خلال typeof
وستجد ان النتيجة ستكون number
، بالرغم ان قيمتها بالبداية كانت string
ولكن قمنا بتحويلها من خلال Number
.
بالمناسبة يمكن استخدام typeof()
بهذا الشكل وبين القوسين يتم كتابة المتغير المراد معرفة نوعه ، او بهذا الشكل typeof
وبعده يتم وضع مسافة من ثم المتغير المراد معرفة نوعه.
تحويل القيمة النصية لرقمية من خلال علامة ( + )
let str = "10";
console.log(typeof(str));
في المثال السابق لم نقم بعمل اي شىء مجرد كتابة متغير ويحتوي على قيمة نصية وقمنا بطباعة نوع هذا المتغير وسيكون string
، يمكننا تحويله لرقم مثل ما عرفنا مسبقاََ من خلال Number
وايضاََ يوجد طريقة أبسط يمكن تحويل هذا المتغير لرقم من خلال وضع قبل اسم المتغير هذه العلامة +
let str = "10";
console.log(typeof(+str));
ستجد ان النتيجة تكون number
وبإمكانك الان التعامل مع هذا المتغير كرقم بدلاََ من نص.
تحويل القيمة الرقمية لقيمة نصية
يمكننا عمل ذلك بكل بساطة من خلال String()
، دعونا نشاهد هذا المثال:
let num = 1;
console.log(typeof num); // number
let str = String(num);
console.log(typeof str); // string
قمنا بالبداية بعمل متغير رقمي ويتحتوي على قيمة 1 من ثم قمنا بطباعة نوع هذا المتغير وستكون النتيجة number
وهو بالفعل متغير رقمي ، بعد ذلك قمنا بعمل متغير جديد واستخدمنا الدالة String
وقمنا بوضع داخلها المتغير num
ولو فحصنا نوع هذا المتغير str ستجد انه string
لاننا قمنا بتحويل قيمة المتغير من رقم لنص من خلال String()