اذهب إلى المحتوى
  • 1

كيف أحوّل نص الى رقم في لغة JavaScript؟

Geek

السؤال

Recommended Posts

  • 1

يُمكن فعلها بكل بساطه في JavaScript.
وطريقة (int) التي ذكرتها عن PHP هي طريقة صحيحه.
الامر في JavaScript ايضاً بسيط وسهل جداً.

ولكن علينا ببعض التوضيحات لمن يتسائل كيف لنص ان يتحول لرقم؟
 - ما يُقصد بالنص هنا هو النص الذي يكون محتواه رقمي. كيف؟!
لنفترض ان لدينا متغير في JavaScript مثل هذا:

var number = '2015';
var numbers = "2015";

هذا ليس رقم.
بل يُعامل معاملة النص لأنه بين علامتي تنصيص ( ' ' ) حتى إذا كانت علامات التنصيص مزدوجه مثل هذه ( " " ) ما بينهم ايضاً يُعتبر نص.
اما إذا كان الرقم لا يحتويه اي علامات تنصيص فهذا رقم من نوع INTEGER اي عدد صحيح مثل هذا:

var num = 2015;

إذاً كيف نقوم بتحويل هذا النص لعدد صحيح من نوع INTEGER؟
كما نستخدم (INT) في PHP سنستخدم دالة parseINT في JavaScript.
هكذا:

var text = '2015';
var textToNum = parseInt(text);

في هذا المثال قمنا بانشاء متغير باسم text واسندنا اليه القيمه النصيه '2015'.
ثم قمنا بانشاء متغير جديد باسم textToNum واستخدمنا بداخلة دالة parseInt لتحويل محتوى المتغير text الي نص.
الآن اصبحت قيمة المتغير textToNum هي عدد صحيح وليس نص.

هذه هي طريقة تحويل النص الي عدد صحيح بكل بساطه.
ولكن هناك معلومة لابد من معرفتها.
إذا بدأ النص بارقام ويليه حروف أو رموز ثم أرقام وهكذا الخ.. ستكون النتيجة هي حذف كل النص بإستثناء الارقام التي بدء بها النص فقط.
هكذا:

var text = '2015/July/8';
var textToNum = parseInt(text);

اﻵن قيمة المتغير textToNum ستكون 2015 فقط.

معلومة اُخرى انه إذا بدا محتوى النص ب صفر 0 او اكثر ويليه ارقام الخ.. ستكون النتيجه هي تجاهل الأصفار واخذ ما يليه من ارقام صحيحة.
هكذا:

var text = '02015/July/8';
var textToNum = parseInt(text);

اﻵن قيمة المتغير textToNum ستكون 2015 فقط.

اما إذا كنت تقوم بتحويل نص لا يحتوي على اي ارقام وخاصةً في بدايته ستكون النتيجه NaN اي النص لا يوجد به ما يطابق الارقام والاعداد الصحيحه.
هكذا:

var text = 'July';
var textToNum = parseInt(text);

اﻵن قيمة المتغير textToNum ستكون NaN.

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0

إستخدم الدالة

parseFloat()

هي مثل الدالة

parseInt()

وتختلف عنها في أن هذه الدالة تعطي الرقم كما هو مع الإحتفاظ بالجزء العشري من العدد

parseFloat("10.335") = 10.335
parseInt("10.335") = 10
رابط هذا التعليق
شارك على الشبكات الإجتماعية

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...