انتقل إلى المحتوى الرئيسي

اكتب التحويل والصب

@serverSerrverlesskiy

اكتب الإكراه (نوع الإكراه)

إنه تحويل تلقائي أو ضمني للقيم من نوع بيانات إلى آخر (على سبيل المثال ، سلسلة إلى رقم). تشبه تحويلات النوع تحويلات النوع لأن كلاهما يقوم بتحويل القيم من نوع بيانات إلى آخر ، مع اختلاف رئيسي واحد - تحويل النوع ضمني ، بينما يمكن أن يكون تحويل النوع ضمنيًا أو صريحًا.

transformation

أمثلة:

محرر مباشر
النتيجة
Loading...

في المثال أعلاه ، تضع JavaScript الرقم 9 في سلسلة ، ثم تربط القيمتين 2️⃣ معًا ، مما ينتج عنه السلسلة 59. كان لجافا سكريبت الاختيار بين سلسلة أو رقم واختار استخدام سلسلة.

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

محرر مباشر
النتيجة
Loading...

اكتب التحويل

Transformation

يعني نقل البيانات من نوع بيانات إلى آخر. يحدث التحويل الضمني عندما يقوم المحول البرمجي تلقائيًا بتعيين (تعيين) أنواع البيانات ، ولكن قد تتطلب شفرة المصدر أيضًا صراحة اكتمال التحويل.

سلسلة التحويل

Transformation

Sيحدث تحويل tring عندما تريد تمثيل شيء ما كسلسلة. على سبيل المثال ، يمكننا استخدام String (value) وظيفة لتحويل قيمة إلى سلسلة :

محرر مباشر
النتيجة
Loading...

يحدث التحول بطريقة واضحة. true يصبح"true"

التحويل الرقمي

Transformation

يحدث التحويل العددي في وظائف وتعبيرات الرياضيات.

محرر مباشر
النتيجة
Loading...

يمكننا استخدام Number (value) وظيفة لتحويل صراحة value إلى رقم :

محرر مباشر
النتيجة
Loading...

غالبًا ما يتم استخدام التحويل الصريح عندما نتوقع الحصول على رقم من سياق سلسلة ، مثل الحقول النصية في النماذج.

إذا تعذر تحويل السلسلة بشكل صريح إلى رقم ، فستكون نتيجة التحويل "NaN" (ليس رقمًا ، "وليس رقمًا"). علي سبيل المثال:

محرر مباشر
النتيجة
Loading...

قواعد التحويل الرقمي:

قيمةتم التحويل إلى ...
undefinedNaN
null0
true / false1 / 0
stringيتم قطع المساحة البيضاء عند الحواف. علاوة على ذلك ، إذا بقيت سلسلة فارغة ، فسنحصل على 0 ، وإلا فسيتم "قراءة" الرقم من سلسلة غير فارغة. عند حدوث خطأ ، تكون النتيجة هي NaN.

أمثلة:

Number('   123   ') // 123
Number('123z') // NaN (error reading the number in place of the "z" character)
Number(true) // 1
Number(false) // 0
Number(null) // 0
Number(undefined) // NaN

لاحظ أن null و undefined تتصرف بشكل مختلف. وبالتالي، null يصبح صفرا ، بينما undefined يلقي ل NaN.

التحويل المنطقي

Transformation

التحول المنطقي هو الأبسط. تحدث في عمليات منطقية ، ولكن يمكن إجراؤها أيضًا بوضوح مع الوظيفة ⚙️Boolean (value).

قواعد التحويل المنطقية:

القيم التي تكون "فارغة" حدسيًا مثل "0" ، سلسلة فارغة ، null, undefined, و NaN أصبحfalse. تصبح جميع القيم الأخرىtrue.

Boolean(1) // true
Boolean(0) // false
Boolean('Привет!') // true
Boolean('') // false

:::تنبيه لاحظ أن السطر الذي يحتوي على صفر "0" صحيح بعض اللغات (على سبيل المثال PHP) فسر السلسلة " 0 " as false. لكن في JavaScript ، إذا لم تكن السلسلة فارغة ، فهي دائمًاtrue :::

Boolean('0') // true
Boolean(' ') // space is also true (any non-empty string is true)

مشاكل؟

Problem

اكتب ل Discord محادثة.

أسئلة:

Question

ما الوظيفة التي يجب أن تستخدمها لتحويل السلسلة؟

  1. String (value)
  2. Boolean (value)
  3. Number (value)

ما هو التلبيس؟

  1. نقل البيانات من نوع إلى آخر
  2. تحويل القيم من نوع بيانات إلى نوع آخر
  3. تمثيل الشيء كسلسلة

ما هو الفرق الرئيسي بين التلبيس والتلبيس؟

  1. تحويل النوع صريح ، وتحويل النوع ضمني
  2. نوع الصب ضمني ، وتحويل النوع صريح
  3. تحويل النوع ضمني ، ويمكن أن يكون تحويل النوع صريحًا وضمنيًا

NaN?متى تكون نتيجة التحويل

  1. عندما لا يمكن تحويل سلسلة بشكل صريح إلى رقم
  2. عندما لا يمكن تحويل رقم بشكل صريح إلى سلسلة
  3. عندما يكون هناك خطأ في الكود

ماذا تصبح القيم "الفارغة" عند تحويلها؟

  1. null
  2. true
  3. false

لفهم مقدار ما تعلمته في هذا الدرس ، قم بإجراء الاختبار فيmobile application من مدرستنا في هذا الموضوع.

EnglishMoji!

الروابط

  1. MDN web docs - Typecasting
  2. Code for Teens: The Perfect Beginner's Guide to Programming, Volume 1: Javascript - Jeremy Moritz
  3. JavaScript.ru
  4. Integer arithmetic

المساهمون✨

الشكر يعود إلى هؤلاء الأشخاص الرائعين(emoji key):


Dmitriy Vasilev

💵

Resoner2005

🐛 🎨 🖋

EnglishMoji!