JavaScript data types 2023

 JavaScript data types 

What are data types in JS

في البرمجة ، تعد أنواع البيانات مفهوما مهما.

لتكون قادرا على العمل مع المتغيرات ، من المهم معرفة شيء عن انوع البيانات.

بدون أنواع البيانات ، لا يمكن للكمبيوتر حل هذا بأمان:


-:input

;”let x = 16 + “bmw

-:output

16bmw


هل من المنطقي إضافة “bmw” إلى 16؟ هل ستنتج خطأ أم أنها ستنتج نتيجة؟

ستتعامل جافا سكريبت مع المثال أعلاه على النحو التالي:


-:input

;”let x =”bmw”+ “16

-:output

bmw16

 


عند إضافة رقم وسلسلة ، ستتعامل JavaScript مع الرقم على أنه string

تقوم JavaScript بحل التعبيرات من اليسار إلى اليمين. يمكن لتسلسلات (string) مختلفة إنتاج نتائج مختلفة:


المثال الاول

-:input

;”let x = 16 + 4 + “bmw

-:output

20bmw


المثال الثاني

-:input

let x = “bmw” + 16 + 4

-:output

bmw164


في المثال الأول ، تعامل JavaScript مع 16 و  4 كأرقام ، حتى تصل إلى “bmw”.

في المثال الثاني ، نظرا لأن المعامل الأول عبارة عن سلسلة ، فإن جميع المعاملات هي تعامل كسلاسل.


جافا سكريبت هي لغة dynamic 

لا ترتبط المتغيرات في JavaScript مباشرة بأي نوع لقيمة معينه ، ويمكن تعيين أي متغير (وإعادة تعيين) قيم من جميع الأنواع:


على سبيل المثال

-:input

let weight = 42; // weightis now a number

weight = “bar”; // weight is now a string

weight = true; // weight is now a Boolean

console.log (weight)

-: output

true


جافا سكريبت weak typing

JavaScript هي أيضا لغة مكتوبة بشكل weak typing ، مما يعني أنها تسمح بتحويل النوع عن طريقه الفرض ( coercions )  اي العملية تتضمن أنواعا غير متطابقة وسيتم فرص نوع على نوع (مثل المثال اعلاه string +number)


على سبيل المثال

-:input

const weight = 42; // weight is a number

const result = weight + “1”; // JavaScript coerces weight to a string, so it can be concatenated with the other operand

console.log(result); // 421

-:output

421


يوجد في JavaScript نوعان مختلفان من البيانات: 

Types of data types in JS


اولا :- primitives 

primitives هو ببساطة نوع بيانات ليس objects .

في JS ، هناك 7 أنواع بيانات بدائية:–

Type

type of return valueObject wrapper

Null

“object”N/A

Undefined

“undefined”N/A

Boolean

BooleanBoolean
Number

“number”

Number

BigInt“bigint”

BigInt

String“string”

String

Symbol“symbol”

Symbol


Boolean

يمثل  Boolean واحدة فقط من قيمتين: true أو false. فكر في القيمة المنطقية على أنها مفتاح تشغيل / إيقاف أو مفتاح true / false.


على سبيل المثال

-:input

; var bo1 = true
; var bo2 = false

 ; console.log(bo1)

 ; console.log(bo2)

-:output

true

false


Number

يتم تخزين جميع أرقام JavaScript كأرقام عشرية (فاصلة عائمة).

يمكن كتابة الأرقام مع أو بدون الكسور العشرية:


على سبيل المثال

-: input

let x1 = 34.00; // With decimals

let x2 = 34; // Without decimals

 ; console.log (x1)

 ; console.log (x2)

-: output

34.00

34


BigInt

يتم تخزين جميع أرقام JavaScript  بتنسيق  64 بت.

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


على سبيل المثال

-: input

let v= BigInt(“123456789012345678901234567890”); //BigInt

 ; console.log(v)

-: output

123456789012345678901234567890


String

تستخدم ال string لتخزين النص. يجب أن تكون string داخل علامات اقتباس مزدوجة  ” ” أو مفردة ‘  ’  . في JS ، تكون string غير قابلة للتغيير (لا يمكن تغييرها).


على سبيل المثال

-:input

  ; ‘var st1 = ‘hello, it is me

  ; ‘var st2 = ‘hello, it is me

 ; console.log(st1)

 ; console.log(st2)

-: output

hello, it is me

hello, it is me


Null

Null له قيمة واحدة: undefined

اي المتغير الذي ليس له قيمة غير محدد.


على سبيل المثال

-: input

var testcard; // undefined

 ; console.log(testcard)

-: output

undefined


Symbol

 هو نوع بيانات بدائي تماما مثل Number, String, or Boolean.

إنه يمثل identifiers “مخفيا” unique لا يمكن لأي رمز آخر الوصول إليه عن طريق الخطأ.

على سبيل المثال ، إذا أراد مبرمجون مختلفون إضافة خاصية person.id إلى  شخص ينتمي إلى رمز جهة خارجية ، ق يحث خلط قيم مع بعصها البعض. يؤدي استخدام Symbol لإنشاء unique identifiers إلى حل هذه المشكلة:


على سبيل المثال

-:input

; let id = Symbol (‘id’)

 ; id = 140353

 ; console.log(result)

-:output

140353 

إذا قمت بإنشاء رمزين بنفس الوصف ، فسيكون لهما قيم مختلفة:

Symbol(“id”) == Symbol(“id”); // false

typeof Operator

يمكنك استخدام عامل تشغيل typeof للعثور على النوع من متغير جافا سكريبت.


على سبيل المثال

-:input

” typeof “John Doe

typeof (3 + 4)

-:output

string 

number


ثانيا :-Non-primitive

Javascript DataType

هذه هي أنواع البيانات المشتقة من أنواع البيانات البدائية. يتم استخدامه لتخزين أو الاحتفاظ بقيم متعددة في وقت واحد.يتضمن  arrays, objects, and functions يتم تخصيص الذاكرة في الذاكرة المؤقتة. أنواع البيانات هذه قابلة للتغيير ، أي يمكن تغييرها .

Objects

Objects ليست نوع بيانات بدائي.Objectsعبارة عن مجموعة من الخصائص. يتم تخزين هذه الخصائص في curly braces {}. يمكن أن تشير الخصائص إلى أي نوع من البيانات ، بما في ذلك الكائنات و / أو القيم البدائية.

على سبيل المثال

-: input

} =const person
,”firstName : “John
,”lastName : “Doe
, age : 50
; “eyeColor : “blue

 ; console.log (firstName,lastName , age ,eyeColor )

-: output

John Doe 50 blue

Arrays

يتم استخدامه لتخزين عناصر متعددة.

على سبيل المثال

-: input

const cars = [“Saab”,”Volvo”,”BMW”]

 ; console.log (cars [0])

-: output

Saab 

Function

الدالة عبارة عن كتلة من التعليمات البرمجية محاطة بأقواس متعرجة تستخدم لأداء مهمة محددة.

على سبيل المثال

-: input

} function myFunction(p1, p2)
; return p1 * p2

myFunction(4, 3)

-: output

12

 


ملحوظه هامه

هنا هي أنarrays, functions هي أنواع بيانات object. ولكن عند التحقق من نوع functions باستخدام عامل التشغيل “typeof” ، فإنه يقوم بإرجاع functions . هذا خطأ في جافا سكريبت.

 

نقترح عليك أن تقرأ

مواقع التحديات البرمجية الأكثر شهرة 2022

 ما هو ال Flexbox في CSS وليه بيتم استخدام ال 2022FLEX BOX 

ما هو الفرق بين مطوري Full Stack و Backend و2022Front End

 ما هو ال Position في Css وما هي انواعها ومتى يتم استخدامها وكيفيه حل مشاكلها ب Z-index

Java مقابل JavaScript: الفرق الرئيسي بين Java و 2022JavaScript

 المصدر المفتوح للمطورين – دليل المبتدئين لمساعدتك على بدء المساهمة 2022

8 أسباب لماذا PHP لا تزال مهمة جدا لتطوير الويب

ما هو PHP؟ وكيف يعمل PHP؟ 2023

كيفية تثبيت php ؟2023

شاهد أيضاً

istockphoto 1129137165 612x612 1

هل يمكن أن يسبب تحديد النسل العقم؟2023

هل يمكن أن يسبب تحديد النسل العقم؟ لقد كنت تستخدمين وسائل منع الحمل الهرمونية لسنوات …

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *