مثال على JavaScript toString - كيفية تحويل رقم إلى سلسلة في JS والمزيد

في بعض الأحيان تريد تحويل نوع بيانات واحد إلى نوع بيانات آخر دون تغيير القيم يدويًا.

على سبيل المثال ، قد ترغب في تحويل رقم إلى سلسلة. يقوم JavaScript أحيانًا بهذا الأمر بشكل ضمني.

مثل عندما تستخدم عامل التشغيل double equals ( ==) ، أو عندما تحاول القيام بشيء ما على قيمة بنوع بيانات غير متوافق مع العملية. هذا يسمى نوع الإكراه.

ومع ذلك ، يمكنك أيضًا تحويل أنواع البيانات بشكل صريح. وسأوضح لكم كيفية القيام بذلك في هذه المقالة.

نوع بيانات السلسلة هو نوع بيانات شائع جدًا في JavaScript. لكل نوع بيانات آخر تقريبًا ، يجب أن يكون لديك تمثيل سلسلة.

تمامًا كما يجب أن تكون قد رأيت شيئًا مشابهًا "[object Object]"عندما تستخدم كائنًا بدلاً من سلسلة فعلية.

في هذه المقالة ، سوف نتعلم ماهية toStringالطريقة ، وكيفية تحويل رقم (وبعض أنواع البيانات الأخرى) إلى سلسلة باستخدام هذه الطريقة.

على toStringطريقة

كما يوحي الاسم ، تُستخدم هذه الطريقة لتغيير البيانات إلى سلسلة. كل من المصفوفات والأرقام والمنطق المنطقية لها هذه الطريقة التي تحول بياناتها بطرق مختلفة. دعونا ننظر إليهم بشكل فردي الآن.

كيفية تحويل رقم إلى سلسلة

و toStringتوجد طريقة على كل عدد الحرفي. يقوم بتحويل الأرقام إلى تمثيلات سلسلة. إليك كيفية استخدامه:

const num = 54; console.log(num.toString()) // "54" 

لكن هناك المزيد لهذا. على toStringطريقة لأرقام يقبل أيضا baseحجة. تسمح لك هذه الوسيطة بتحويل رقم إلى أساس آخر.

القيمة التي تم إرجاعها هي تمثيل السلسلة للرقم الجديد. إليك كيفية استخدامه:

const num = 54; const num2 = num.toString(2); console.log(num2); // "110110" 

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

const numInStr = "54"; const str = "Hello"; console.log(parseInt(numInStr)); // 54 console.log(parseInt(str)); // NaN 

بالنسبة إلى متغير لا يشبه الرقم ، يتم parseIntإرجاعه Nanكما هو موضح أعلاه.

كيفية تحويل مصفوفة إلى سلسلة في JavaScript

المصفوفات لها toStringالطريقة أيضًا . القيمة التي يتم إرجاعها من هذه الطريقة هي عبارة عن سلسلة من جميع قيم المصفوفة (والمصفوفات المتداخلة بعمق فيها) مفصولة بفواصل. إليك كيفية استخدامه:

const arr = ["javascript", "toString", [1, "deep1", [3, 4, "array"]]]; console.log(arr.toString()); // "javascript,toString,1,deep1,3,4,array" 

كيفية تحويل كائن إلى سلسلة في JavaScript

قيمة الإرجاع toStringعلى كائن - تمامًا كما قد تكون غالبًا - "[object Object]". فمثلا:

const obj = {name: 'Object'}; const obj2 = {type: 'data', number: 100}; console.log(obj.toString()); // [object Object] console.log(obj2.toString()); // [object Object] 

التحويل الافتراضي للكائنات إلى سلسلة هو [object Object]. لاحظ أن هناك اثنين object، وليس واحد فقط؟ والآخر هو رسملة؟

هناك المزيد من التمثيلات لأشياء مثل ما يلي:

function print() {}; const arr = []; const obj = {}; console.log( Object.prototype.toString.call(print), Object.prototype.toString.call(arr), Object.prototype.toString.call(obj) ) // [object Function] [object Array] [object Object] 

الوظائف والمصفوفات والكائنات وحتى التواريخ والتعبير العادي كلها كائنات. ولكل منهم toStringالطريقة.

عندما toStringيتم استدعاؤها عليها ، فإنها تلتقط أي فئة من قيمة الكائن ، ثم تطبعها كما تراه أعلاه ("الوظيفة ، الصفيف ، الكائن).

نستخدم call(variable)لأن toStringيحصل على فئة الكائن من خلال thisالخاصية.

استنتاج

تقوم .toStringالطريقة بإرجاع سلسلة تحويل البيانات المستخدمة عليها. هذا مفيد جدًا في حالات معينة ، خاصةً numbers.

في هذه المقالة ، تعلمنا كيف toStringتعمل طريقة JavaScript مع numbers و arrays و objects ونظرنا أيضًا قليلاً parseInt.