نتائج البحث

اذهب إلى التنقل اذهب إلى البحث

الكائن SyntaxError في JavaScript

الكائن SyntaxError يُشير إلى حدوث خطأ عند محاولة تفسير شيفرة ذات بنية غير صحيحة. البنية العامة new SyntaxError([message]) message وسيط اختياري، وهو وصفٌ نصيٌّ للخطأ موجَّهٌ للبشر. الخاصيات والدوال التابعة للدالة البانية SyntaxError الخاصيات SyntaxError.prototype تُمثِّل هذه الخاصية كائن prototype التابعة للكائن SyntaxError. الدوال الدالة البانية SyntaxError لا تملك أيّة دوال تابعة لها مباشرةً، وإنما ترث بعض الخاصيات عبر سلسلة prototype. الكائن prototype الخاصيات SyntaxError.prototype.constructor تُحديد الدالة التي ستُنشِئ كائن prototype لكائنات SyntaxError؛ راجع صفحة الخاصيةObject.prototype.constructor لمزيدٍ من التفاصيل. SyntaxError.prototype.message رسالة ...

بناء Javascript و CSS

مقدمة لا يفرض Laravel عليك استخدام أي معالج JavaScript و CSS، إلّا إنّه يوفّر نقطة انطلاق بسيطة باستخدام Bootstrap و Vue ممّا سيساعد العديد من التطبيقات. بصفة عامّة، يستخدم Laravel أوامر npm لتنصيب حزم الواجهات الأمامية هذه. CSS يوفّر Laravel Mix واجهة برمجية (API) سهلة ومعبّرة لترجمة Sass أو Less، وهي إضافات للغة CSS الأساسية التي تضيف المتغيّرات والمخاليط (mixins) والعديد من الخصائص الأخرى التي تجعل العمل بلغة CSS أكثر متعة. في هذه الصفحة، سنناقش باختصار ترجمة CSS بصفة عامّة ...

الكائن Date في JavaScript

الدالة البانية Date تُنشِئ كائنًا من النوع Date الذي يُمثِّل لحظة زمنية معيّنة. القيمة الزمنية الموجودة في كائنات Date هي كم ملي ثانية مضى منذ تاريخ 1 كانون الثاني (يناير) 1970 بتوقيت UTC. البنية العامة new Date(); new Date(value); new Date(dateString); new Date(year, month, day, hours, minutes, seconds, milliseconds); ملاحظة: كائنات Date في JavaScript يمكن تهيئتها باستخدام Date كدالة بانية فقط، أي استدعاؤها كدالة عادية (دون المعامل new) وسيُعيد ذلك سلسلةً نصيةً بدلًا من الكائن Date، وعلى النقيض من بقية أنواع كائنات JavaScript، لا ...

معاملات المقارنة في JavaScript

تملك JavaScript نوعين من المقارنة: نوع المقارنة الصارم (strict comparison) مثل المعامل === الذي تكون نتيجة المقارنة معه هي true إذا كانت كلا القيمتان من النوع نفسه ومحتوياتهما متطابقة؛ ونوع المقارنة الذي يحوِّل أنواع البيانات لتتوافق مع بعضها (type–converting comparison) مثل المعامل == الذي يحوِّل القيمتين إلى النوع نفسه قبل إجراء عملية المقارنة؛ أما لعمليات المقارنة النسبية (مثل ‎>=‎) فستحوَّل القيم المُقارَنة إلى قيم أوليّة ثم إلى نوع البيانات نفسه وذلك قبل إجراء عملية المقارنة. تُقارَن السلاسل النصية بناءً على ...

أولوية المعاملات في JavaScript

أولوية المعاملات (operator precedence) تُحدِّد طريقة تفسير المعاملات نسبةً إلى بعضها بعضًا، والمعاملات التي لها أولوية أعلى ستصبح قيمةً تُجرى عليها عملية المعاملات ذات الأولوية المنخفضة. مثال شائع عن أولوية المعاملات: 3 + 4 * 5 // 23 معامل الضرب * له أولوية أعلى من معامل الجمع +، لذا سيُصبح ناتج التعبير ‎4 * 5 قيمةً تُجرى عليها عملية الجمع، بدلًا من أن يصبح التعبير ‎3 + 4 قيمةً تُجرى عليها عملية الضرب. الترتيب يُحدِّد الترتيب (associativity) الطريقة التي تُفسَّر فيها ...

المعامل void في JavaScript

المعامل void يُقدِّر قيمة التعبير المعطى (expression) ثم يُعيد القيمة undefined. البنية العامة void expression الوصف هذا المعامل يسمح بتقدير قيمة التعابير البرمجية للحصول على قيمة منها تساوي undefined (أي ستُنفَّذ تلك التعابير البرمجية لكن القيمة المعادة هي undefined). يُستخدَم المعامل void عادةً للحصول على القيمة الأوليّة undefined، وذلك باستخدام ‎void(0)‎ (أو الشكل المكافئ void 0)، يجدر بالذكر أنَّ هذا الاستخدام مفيدٌ إذا أعيد ضبط قيمة المتغير العام undefined إلى قيمة أخرى. أمثلة الدوال ذاتية الاستدعاء عند استخدام دالة ذاتية ...

الكائن JSON في JavaScript

الكائن JSON يحتوي على الدوال التي تُفسِّر صيغة JavaScript Object Notation (اختصارًا JSON) وتحوّل القيم إلى صيغة JSON. ليس الغرض من هذا الكائن هو تهيئته أو بناؤه (عبر المعامل new)، وليس له عملٌ خاصٌ به باستثناء وجود دالتين تابعتين له. الوصف صيغة JSON هي صيغة لتخزين الكائنات والمصفوفات والأعداد والسلاسل النصية والقيم المنطقية والقيمة null؛ وهي مبنية على صيغة JavaScript لكنها تختلف عنها، فبعض شيفرات JavaScript ليست صالحةً في JSON، وبعض شيفرات JSON ليس صالحةً في JavaScript. الجدول الآتي يعرض ...

الكائن Object في JavaScript

الدالة البانية Object تُنشِئ كائنًا. البنية العامة // الشكل المختصر لتهيئة الكائن { [ nameValuePair1[, nameValuePair2[, ...nameValuePairN] ] ] } // استدعاء الدالة البانية new Object([value]) nameValuePairN أزواج من الأسماء (السلاسل النصية) والقيم (أيّ نوع من القيم) التي يُفصل فيها بين الاسم والقيمة بنقطتين رأسيتين :. value أيّة قيمة في JavaScript. الوصف الدالة البانية Object تُغلِّف (wrap) القيمة المعطية في كائن، وإذا كانت القيمة المعطية null أو undefined، فستُنشِئ وتُعيد كائنًا فارغًا، وفيما عدا ذلك فستُنشِئ وتُعيد كائنًا من النوع المناسب للقيمة المعطية، ...

المعامل new في JavaScript

المعامل new يُنشِئ نسخةً من كائن مُعرَّف من المستخدم أو نسخةً من أحد أنواع الكائنات المُضمّنة في لغة JavaScript والتي تملك دالةً بانيةً. البنية العامة new constructor[([arguments])] constructor صنف (class) أو دالة (function) التي تُحدِّد نوع نسخة الكائن (object instance). arguments قائمة بالقيم التي ستُمرَّر إلى الدالة البانية constructor. الوصف إنشاء كائن مُعرَّف من المستخدم يتطلب خطوتين: تعريف نوع الكائن بكتابة دالة، إنشاء نسخة من الكائن عبر المعامل new. لتعريف نوع الكائن، فيجب إنشاء دالة تُحدِّد اسمه وخاصياته، ويمكن أن ...

التصريح عن الدوال في JavaScript

التصريح عن الدالة (function declaration) يُعرِّف دالةً لها معاملات (parameters) معيّنة. يمكن أيضًا تعريف الدوال عبر الدالة البانية Function وعبر تعابير تعريف الدوال (function expression). البنية العامة function name([param,[, param,[..., param]]]) { [statements] } name اسم الدالة. param اسم الوسيط المُرَّر إلى الدالة، العدد الأقصى للوسائط التي يمكن تمريرها إلى الدالة يختلف حسب المحرِّك الذي يُفسِّر اللغة. statements التعابير البرمجية التي تُشكِّل جسم الدالة. الوصف الدالة المُصرَّح عنها هي كائن Function يملك وصولًا إلى جميع خاصياته ودواله ولها نفس ...

الكائن RegExp في JavaScript

الكائن RegExp هو دالةٌ بانيةٌ تُنشِئ تعابير نمطيةً (regular expressions) لمُطابَقة النص مع نمط. البنية العامة يمكن أن تأخذ التعابير النمطية الشكل الآتي (الشكل المختصر، ثم الدالة البانية، ثم الدالة RegExp): /pattern/flags new RegExp(pattern[, flags]) RegExp(pattern[, flags]) pattern التعبير النمطي. flags إذا حُدِّدَت قيمة هذا الوسيط، فستحتوي على تجميعة من الرايات الآتية. g المطابقة في كامل السلسلة النصية، أي العثور على جميع المطابقات بدل التوقف عند أوّل مطابقة. i تجاهل حالة الأحرف. m تعدد الأسطر، أي معاملة محرف البداية والنهاية (أي ^ ...

الدوال المولدة في JavaScript

التصريح عن الدالة المولدة (generator function declaration) يُعرِّف دالة مولدِّةً التي تُعيد الكائن Generator. لاحظ أنَّ التصريح عن الدوال المولدة يكون عبر الكلمة المحجوزة function ويليها رمز النجمة *. يمكن أيضًا تعريف الدوال المولِّدة عبر الدالة البانية GeneratorFunction وعبر تعابير تعريف الدوال المولدة (function* expression). البنية العامة function* name([param[, param[, ... param]]]) { statements } name اسم الدالة param اسم الوسيط المُرَّر إلى الدالة، العدد الأقصى للوسائط التي يمكن تمريرها إلى الدالة يختلف حسب المحرِّك الذي يُفسِّر اللغة. statements ...

try...catch في JavaScript

التعبير البرمجي try...catch يُستخدَم لتجربة قسم من التعابير البرمجية، ويُحدِّد طريقةً لمعالجة الاستثناءات إن رُمِيَت. البنية العامة try { try_statements } [catch (exception_var_1) { catch_statements_1 }] ... [catch (exception_var_2) { catch_statements_2 }] [finally { finally_statements }] try_statements التعابير البرمجية التي ستُنفَّذ والتي قد ترمي استثناءً. catch_statements_1 و catch_statements_2 التعابير البرمجية التي ستُنفَّذ إذا رُمي استثناءٌ في قسم try. exception_var_1 و exception_var_2 مُعرِّف يُستخدَم لتخزين قيمة كائن الاستثناء (exception object) المرتبط مع قسم catch. finally_statements التعابير البرمجية التي ستُنفَّذ بعد إكمال ...

معاملات الإسناد في JavaScript

معاملات الإسناد (assignment operators) تُسنِد القيمة التي على يمين المعامل إلى القيمة التي على يساره. لمحة معامل الإسناد البسيط هو رمز المساواة =، الذي يؤدي إلى إسناد القيمة التي على يمينه إلى القيمة التي على يساره، أي لو كان عندنا x = y فستُسنَد قيمة y إلى x؛ أما بقية معاملات الإسناد فهي اختصارٌ للعمليات القياسية كما هو واضح في الأقسام والأمثلة التالية. الاسم المعامل المعنى معامل الإسناد x = y x = y معامل الإسناد والإضافة x += y ...

الرموز Symbol في JavaScript

الدالة Symbol()‎ تُعيد قيمةً من النوع symbol، وتملك هذه الدالة خاصيات ساكنة (static properties) ودوال ساكنة (التي تُستخدَم للوصول إلى سجل الرموز العام، أي global symbol registry، ويسمى أيضًا بالمصطلح symbol table)؛ وهذه الدالة تحاول التشبه بالدوال البانية للكائنات، لكنها ليست دالةً بانيةً لعدم القدرة على استخدام المعامل new معها كما في new Symbol()‎. كل رمز (symbol) مُعاد من الدالة Symbol()‎ هو رمزٌ فريد؛ ويمكن أن يُستخدَم كمُعرِّف (identifier) لخاصيات الكائنات، وهذا هو الغرض الرئيسي من هذا النوع من البيانات. ...

دالة setter في JavaScript

البنية set تؤدي إلى ربط خاصية من خاصيات الكائن بدالة التي ستستدعى عند محاولة ضبط قيمة تلك الخاصية. البنية العامة {set prop(val) { . . . }} {set [expression](val) { . . . }} prop اسم الخاصية الذي سترتبط بالدالة المعطية. val اسم المتغير الذي سيحمل القيمة التي تتم محاولة إسنادها إلى الخاصية prop. expression بدءًا من ECMAScript 2015 (أي ES6)، يمكن استخدام التعابير لإنشاء أسماء محسوبة للخاصيات التي سترتبط بالدالة المعطية. الوصف يمكن أن تستخدم دالة setter في JavaScript لتنفيذ ...

الدالة eval()‎ في JavaScript

الدالة eval()‎ تُقدِّر قيمة شيفرة JavaScript المُمثَّلة في سلسلة نصية. البنية العامة eval(string) string سلسلة نصية تُمثِّل أحد التعبيرات أو التعبيرات البرمجية أو سلسلة من التعبيرات البرمجية في JavaScript، ويمكن أن يحتوي التعبير أيضًا على متغيرات وخاصيات لكائنات موجودة مسبقًا. القيمة المعادة ستُعيد الدالة eval()‎ قيمة آخر تعبير قد قُدِّرَت قيمته، وإذا كانت قيمته فارغةً فستُعاد القيمة undefined. الوصف الدالة eval()‎ هي خاصيةٌ للكائن العام (global object)، وتقبل وسيطًا هو سلسلة نصية، وإذا كانت هذه السلسلة النصية تُمثِّل تعبيرًا (expression ...

الكائن URIError في JavaScript

الكائن URIError يُمثِّل أحد الأخطاء التي تقع عند تمرير وسائط غير صالحة إلى دالة encodeURI()‎ (أو encodeURIComponent()‎) أو decodeURI()‎ (أو decodeURIComponent()‎) البنية العامة new URIError([message]) message وسيط اختياري، وهو وصفٌ نصيٌّ للخطأ موجَّهٌ للبشر. الخاصيات والدوال التابعة للدالة البانية URIError الخاصيات URIError.prototype تُمثِّل هذه الخاصية كائن prototype التابعة للكائن URIError. الدوال الدالة البانية URIError لا تملك أيّة دوال تابعة لها مباشرةً، وإنما ترث بعض الخاصيات عبر سلسلة prototype. الكائن prototype الخاصيات URIError.prototype.constructor تُحديد الدالة التي ستُنشِئ كائن prototype لكائنات URIError؛ راجع صفحة الخاصيةObject.prototype.constructor لمزيدٍ ...

الأقسام الكتلية في JavaScript

الأقسام الكتلية (block statement) تُستخدَم لتجميع عدِّة تعابير برمجية معًا، ويُعرَّف القسم بزوجٍ من الأقواس المعقوفة {}، وقد يُضاف قبله لافتة (label). البنية العامة قسم كتلي دون لافتة: { StatementList } قسم كتلي مع لافتة: LabelIdentifier: { StatementList } StatementList التعابير البرمجية المجمَّعة ضمن القسم الكتلي. LabelIdentifier لافتة label اختيارية يمكن استخدامها لتسهيل التعرّف بصريًا على القسم، أو كوجهة للتعبير break. الوصف تسمح الأقسام الكتلي لك باستخدام أكثر من تعبير برمجي في المواضع التي تتوقع JavaScript أن تتلقى تعبيرًا برمجيًا وحيدًا؛ ...

JavaScript/Topics/Statements

في هذا القسم جميع التعابير البرمجية الموجودة في لغة JavaScript. التحكم في التنفيذ block تُستخدَم الأقسام الكتلية لتجميع عدِّة تعابير برمجية معًا، ويُعرَّف القسم بزوجين من الأقواس المعقوفة {}. break يإنهاء حلقة التكرار الحالية أو التعبير switch أو label، وستنقل تنفيذ البرنامج إلى التعبير البرمجي الذي يلي التعبير الذي انتهى. continue تجاوز تنفيذ التعابير البرمجية في التكرار الحالي (iteration) في حلقة التكرار الحالية أو حلقة التكرار المسماة (عبر لافتة)، وسيستمر تنفيذ الحلقة بدءًا من التكرار التالي. Empty يُستخدَم لتجنب توفير تعبير برمجي في ...

مهيئ الكائنات في JavaScript

يمكن تهيئة الكائنات باستخدام new Object()‎ أو الدالة Object.create()‎ أو باستخدام الشكل المختصرة (initializer notation). إنَّ مُهيّئ الكائنات هو قائمة فيها «صفر» زوج أو أكثر من أسماء الخاصيات مع القيم المرتبطة بها، مفصولةٌ بفواصل، ويحيط بها قوسين معقوفين {}. البنية العامة var o = {}; var o = {a: 'foo', b: 42, c: {}}; var a = 'foo', b = 42, c = {}; var o = {a: a, b: b, c: c}; var o = { property: function ([parameters]) {}, get property() ...

معامل الفاصلة في JavaScript

معامل الفاصلة (comma operator) يُقدِّر القيم التي يجري عمليته عليها (من اليسار إلى اليمين) ويُعيد قيمة آخر قيمة. البنية العامة expr1, expr2, expr3... expr1 و expr2 و expr3 أيّة تعابير (expressions) برمجية. الوصف يمكنك استخدام معامل الفاصلة عندما تريد تضمن عدِّة تعابير (expressions) في مكان يسمح بتعبيرٍ واحد؛ وأكثر استخدام شائع لهذا المعامل هو توفير أكثر من متغير لحلقة for. أمثلة استخدام معامل الفاصلة مع حلقة التكرار for إذا كانت لدينا مصفوفة باسم a وهي مصفوفةٌ ثنائيةُ الأبعاد في كل ...

الكائن Function في JavaScript

الدالة البانية Function تُنشِئ كائن Function جديد، واستدعاء الدالة البانية مباشرةً يمكِّننا من إنشاء الدوال ديناميكيًا، لكنه يعاني من مشاكل تتعلق بالأداة والناحية الأمنية بما يشابه دالة eval. يجدر بالذكر أنَّ جميع الدوال في JavaScript هي كائنات Function. البنية العامة new Function ([arg1[, arg2[, ...argN]],] functionBody) arg1, arg2, ... argN الأسماء المستخدمة من الدالة للإشارة إلى الوسائط المُمرَّرة إلى الدالة، ويجب أن تكون سلاسل نصية تُمثِّل مُعرِّفات JavaScript صالحة أو قائمة من تلك السلاسل النصية التي يُفصَل بينها بفاصلة؛ مثلًا: ...

الكائن arguments في JavaScript

الكائن arguments هو كائن شبيه بالمصفوفات يمنحنا وصولًا إلى الوسائط المُمرَّرة إلى دالةٍ ما. البنية العامة arguments الوصف الكائن arguments هو متغيرٌ محليٌّ متاحٌ في جميع الدوال (عدا الدوال السهمية)، ويمكنك الإشارة إلى الوسائط المُمرَّرة إلى الدالة داخلها باستخدام الكائن arguments. يحتوي هذا الكائن على كل وسيط مُمرَّر إلى الدالة مرتبًا بنفس ترتيب تمريره بدءًا من الفهرس 0. على سبيل المثال، إذا مُرَّرتَ ثلاثة وسائط إلى دالةٍ ما، فيمكنك الإشارة إليها كما يلي: arguments[0] arguments[1] arguments[2] يمكنك ضبط قيمة الوسائط أيضًا: arguments[1] = ...

الكائن ReferenceError في JavaScript

الكائن ReferenceError يُشير إلى حدوث خطأ عند محاولة الإشارة إلى متغيرٍ غير موجود. البنية العامة new ReferenceError([message]) message وسيط اختياري، وهو وصفٌ نصيٌّ للخطأ موجَّهٌ للبشر. الخاصيات والدوال التابعة للدالة البانية ReferenceError الخاصيات ReferenceError.prototype تُمثِّل هذه الخاصية كائن prototype التابعة للكائن ReferenceError. الدوال الدالة البانية ReferenceError لا تملك أيّة دوال تابعة لها مباشرةً، وإنما ترث بعض الخاصيات عبر سلسلة prototype. الكائن prototype الخاصيات ReferenceError.prototype.constructor تُحديد الدالة التي ستُنشِئ كائن prototype لكائنات ReferenceError؛ راجع صفحة الخاصيةObject.prototype.constructor لمزيدٍ من التفاصيل. ReferenceError.prototype.message رسالة الخطأ. ...

المعامل typeof في JavaScript

المعامل typeof يُعيد سلسلةً نصية تُشير إلى نوع القيمة التي تليه. البنية العامة typeof operand operand تعبير يُمثِّل كائنًا أو نوع بيانات أوليّ الذي نريد إعادة نوعه. الوصف الجدول الآتي يُلخِّص القيم التي يمكن أن يُعيدها المعامل typeof: النوع النتيجة undefined "undefined" null "object" (انظر الأمثلة) Boolean "boolean" Number "number" String "string" Symbol (جديد في ECMAScript 2015) "symbol" Function "function" أي كائن آخر "object" أمثلة // الأعداد typeof 37 === 'number'; typeof 3.14 === 'number'; typeof(42) === 'number'; typeof Math.LN2 === 'number'; typeof Infinity === ...

الدالة Promise.all()‎ في JavaScript

الدالة Promise.all(iterable)‎ تُعيد وعدًا Promise وحيدًا الذي سيُقبَل (resolves) عندما تكون جميع الوعود في الوسيط iterable مقبولة، أو عندما يكون المعامل iterable لا تحتوي على أيّ وعود. وسيُرفَض مع سبب أول وعد مرفوض. var promise1 = Promise.resolve(3); var promise2 = 42; var promise3 = new Promise(function(resolve, reject) { setTimeout(resolve, 100, 'foo'); }); Promise.all([promise1, promise2, promise3]).then(function(values) { console.log(values); }); // Array [3, 42, "foo"] البنية العامة Promise.all(iterable); المعاملات iterable كائن قابل للتكرار (iterable) مثل Array أو String. القيمة المعادة وعد Promise مقبول (already resolved) إذا ...

القيمة null في JavaScript

القيمة null تُمثِّل الغياب المقصود لقيمة الكائن، وهي من أنواع القيم الأوليّة في JavaScript. البنية العامة null الوصف القيمة null تُستخدَم عبر ذكر null، لاحظ أنَّ null ليست مُعرِّفًا لخاصية في الكائن العام (أي أنها ليست مثل الخاصية undefined)، وإنما null تُعبِّر عن عدم وجود تعريف (identification) من الأساس، وتدل على أنَّ المتغير لا يُشير إلى أيّ كائن. // المتغير غير موجود، إذ لم يُعرَّف أو يُهيّئ من قبل console.log(foo); // ReferenceError: foo is not defined // أصبح المتغير موجودًا لكن ليس ...

معامل التجميع في JavaScript

معامل التجميع (grouping operator) وهو ( ) يتحكم بأولوية تقدير قيمة التعابير (expressions). البنية العامة ( ) الوصف معامل التجميع يتألف من زوجٍ من الأقواس الهلالية التي تحيط بتعبير (expression) أو تعبيرٍ فرعي (sub-expression) لتجاوز أولوية المعاملات العادية لكي يمكن تقدير قيمة التعابير ذات الأولوية المنخفضة قبل التعابير ذات الأولوية الأعلى منها. أمثلة مثال عن تجاوز أولوية الضرب والقسمة أولًا، ثم الجمع والطرح لجعل عملية الجمع تُجرى أولًا: var a = 1; var b = 2; var c = 3; // الأولوية ...

المعامل instanceof في JavaScript

المعامل instanceof يختبر إذا كانت الخاصية prototype لدالة بانية تظهر في أيّ مكان في سلسلة prototype لأحد الكائنات. البنية العامة object instanceof constructor object الكائن الذي نريد معرفة إن كانت خاصية prototype للدالة البانية constructor ستظهر في أي مكان في سلسلة prototype الخاصة به. constructor الدالة البانية التي سنختبر الكائن بها. الوصف يختبر المعامل instanceof وجود الخاصية constructor.prototype في سلسلة prototype للكائن object. // تعريف الدوال البانية function C() {} function D() {} var o = new C(); // true: Object.getPrototypeOf(o) === C.prototype o instanceof ...

الكائن Boolean في JavaScript

الكائن Boolean هو كائن مُغلِّف لنوع القيم الأوليّة boolean (المنطقية). البنية العامة new Boolean([value]) value وسيط اختياري، وهو القيمة الابتدائية للكائن Boolean. الوصف القيمة المُمرَّرة كوسيط إلى الدالة البانية Boolean ستُحوَّل إلى قيمة منطقية إن كان ذلك ضروريًا؛ وإذا لم تُحدَّد القيمة، أو كانت 0 أو -0 أو null أو false أو NaN أو undefined أو سلسلة نصية فارغة "" فستكون القيمة الابتدائية للكائن هي false؛ وجميع القيمة الأخرى بما في ذلك أيّة كائنات أو السلسلة النصية "false" ستُنشِئ كائنًا ...

المعامل delete في JavaScript

المعامل delete يحذف خاصيةً من كائن. البنية العامة delete expression إذ يجب أن تكون نتيجة التعبير expression هي مرجعية إلى خاصية من خاصيات الكائن، مثلًا: delete object.property delete object['property'] object اسم الكائن، أو تعبير نتيجته هي إشارة إلى كائنٍ ما. property اسم الخاصية التي نريد حذفها. القيمة المعادة القيمة true لكل الحالات إلا إذا كانت الخاصية غير قابلة للضبط (non-configurable property)، وفي هذه الحالة ستُعاد القيمة false في النمط non-strict. الاستثناءات سيُرمى SyntaxError في نمط strict إذا كانت الخاصية غير قابلةً للضبط ...

الدالة escape()‎ في JavaScript

الدالة escape()‎ تُهرِّب المحارف الخاصة الموجودة في سلسلة نصية وتُعيد السلسلة النصية المرمَّزة. البنية العامة escape(str) str السلسلة النصية التي ستُرمَّز. القيمة المعادة سلسلة نصية تُمثِّل النسخة المُرمَّزة من السلسلة النصية. الوصف الدالة escape هي خاصيةٌ من خاصيات الكائن العام، وستؤدي إلى ترميز المحارف الخاصة باستثناء المحارف @*_+-./. التمثيل الست عشري لتلك المحارف يكون على الشكل ‎%xx وذلك للمحارف التي تكون قيمة رمزها (code unit value) أقل من 0xFF، وللمحارف التي تكون قيمة رمزها أكبر من ذلك فستُستخدم الصيغة ‎%uxxxx. ...

المعامل await في JavaScript

المعامل await يُستخدَم لانتظار وعد (الكائن Promise)، ويمكن أن يُستخدَم داخل دالة غير متزامنة فقط (async function). البنية العامة [rv] = await expression; expression كائن Promise أو أيّة قيمة يجب انتظارها. rv إعادة قيمة المُحققة للوعد (الكائن Promise)، أو القيمة نفسها إذا لم تكن وعدًا. الوصف التعبير await يؤدي إلى إيقاف تنفيذ دالة غير متزامنة (async function) ريثما يتحقق (fulfill) أو يُرفَض (reject) الوعد (الكائن Promise)، ويؤدي إلى استئناف تنفيذ الدالة غير المتزامنة بعد أن يتحقق الوعد، وعند استنئاف الدالة ...

المعاملات الرياضية في JavaScript

المعاملات الرياضية (arithmetic operators) تأخذ قيمًا عدديةً وتُعيد قيمةً عدديةً واحدةً، والمعاملات الرياضية القياسية هي الجمع + والطرح - والضرب * والقسمة /. الجمع (+) معامل الجمع يُنتِج مجموع المدخلات الرقمية، أو يضيف سلسلتين نصيتين إلى بعضها. البنية العامة x + y أمثلة // رقم + رقم -> عملية جمع 1 + 2 // 3 // رقم + قيمة منطقية -> عملية جمع true + 1 // 2 // قيمة منطقية + قيمة منطقية -> عملية جمع false + false // 0 // رقم + سلسلة ...

الكائن Number في JavaScript

الكائن Number هو كائن مُغلِّف (wrapper object) الذي يسمح لك بالعمل مع القيم العددية، وتُنشَأ كائنات Number باستخدام الدلة البانية Number()‎. البنية العامة new Number(value); value القيمة العددية التي سيحملها الكائن المُنشَأ. الوصف الاستخدامات الأساسية لكائنات Number هي: إذا لم يكن بالإمكان تحول الوسيط المُمرَّر إلى الدالة البانية إلى قيمة رقمية، فستُعاد القيمة NaN. عند استخدام الدالة Number دون المعامل new (أي أنها ليست دالةً بانيةً)، فيمكن أن تُستخدَم لإجراء تحويل بين أنواع القيم. الخاصيات التابعة للدالة البانية Number Number.EPSILON ...

do...while في JavaScript

التعبير البرمجي do...while يُنشِئ حلقة تكرار تُنفِّذ تعبيرًا برمجيًا معيّنًا إلى أن يصبح الشرط غير محقق (false)، وسيتم التحقق من الشرط بعد تنفيذ التعبير البرمجي، مما يؤدي إلى تنفيذ التعبير البرمجي المُعيّن مرةً واحدةً على الأقل. البنية العامة do statement while (condition); statement  التعبير البرمجي الذي سيُنفَّذ مرةً واحدةً على الأقل وسيُعاد تنفيذه في كل مرة يكون فيها الشرط محققًا (أي true)؛ ولتنفيذ أكثر من تعبير برمجي فاستخدام الأقسام الكتلية (block statement) { ... } لتجميع هذا التعابير. condition ...

الكائن Math في JavaScript

الكائن Math هو كائنٌ مُضمَّن في اللغة الذي يملك خاصيات ودوال تُمثِّل الثوابت والدوال الرياضيّة. هذا الكائن ليس دالةً بحد ذاته، انظر قسم الوصف للمزيد من المعلومات. الوصف على النقيض من الكائنات العامة الأخرى، الكائن Math ليس دالةً بانيةً (constructor)، وجميع الخاصيات والدوال التابعة للكائن Math هي خاصيات ساكنة (static)، وهذا يعني أنَّك تستطيع الإشارة إلى الثابت الرياضي π (باي) باستخدام الخاصية Math.PI وتستطيع استخدام دالة جيب الزاوية (sine) كما يلي Math.sin(x)‎، إذ إنَّ القيمة x هي الوسيط المُمرَّر إلى ...

JavaScript/Topics/Functions

هذا القسم فيه ما يتعلق بميزات دوال JavaScript التي تستفيد منها في تطوير التطبيقات. الدوال في JavaScript الكائن arguments الدوال السهمية الوسائط الافتراضية معامل البقية

التابع ‎.delegate()‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎ في jQuery

‎.delegate( selector, eventType, handler )‎ أُهمِل مع الإصدار: 3.0. القيمة المعادة يُعيد كائنًا من النوع jQuery. الوصف يُرفق هذا التابع معالج بأحد الأحداث أو أكثر لكافة العناصر التي تطابق المُحدِد، الآن أو في المستقبل، استنادًا إلى مجموعة محددة من العناصر الجذر. ‎.delegate( selector, eventType, handler )‎ أُضيف مع الإصدار: 1.4.2. selector سلسلة نصية تُحدد ترشيح العناصر التي تبدأ الحدث من النوع String. eventType سلسلة نصية تحتوي على واحد أو أكثر من أنواع أحداث JavaScript مفصولة بمسافات، مثل "click"، أو "keydown,‎"، ...

نظرة عامة على وحدة العرض في ريلز

بعد قراءة هذا الدليل، ستعرف: ما هو Action View وكيفية استخدامه مع ريلز. أفضل طريقة لاستخدام القوالب والجزئيات (partials) والتخطيطات. ما الذي يقدمه المساعدون عن طريق Action View. كيفية استخدام العروض المحلية. ما هو Action View؟ في ريلز، تُعَالَج طلبات الويب من خلال Action Controller و Action View. عادةً ما يقع على عاتق وحدة التحكم التواصل مع قاعدة البيانات وتنفيذ الإجراءات CRUD عند الضرورة؛ بعد ذلك، يكون Action View مسؤولًا عن تفسير (compiling) الاستجابة. تُكتَب قوالب Action View باستخدام روبي ...

Document.createElement()‎

في مُستندات HTML، يُنشئُ التّابع Document.createElement()‎ عنصرَ HTML المُحدّد عبر المُعامل tagName الذي يُمثّل اسم الوسم، أو يُنشئ كائنا من النّوع HTMLUnknownElement إن لم يُتعرَّف على اسم الوسم tagName. البنية العامة var element = document.createElement(tagName[, options]); المعاملات tagName سلسلةٌ نصيّةٌ تُحدّد نوع العنصر المرغوب إنشاؤه. قيمة nodeName الخاصّة بالعنصر المُنشأ تُحدَّد من قيمة tagName. لا تَستعمِل الأسماء الموصوفة (مثل "html:a") مع هذا التّابع. عندما يُستدعى التّابع على مُستند HTML، فستُحوَّل قيمة tagName إلى أحرف صغيرة (lower case) قبل إنشاء العنصر. ...

Document.getElementById()‎

يُعيد التّابع Document.getElementById()‎ كائنًا من النّوع Element يُمثّل العنصر ذو المُعرّف (id) الذي يُوافق السلسلة النّصيّة المُحدّدة. ولأنّ مُعرّفات العناصر لا بدّ لها أن تكون فريدة عند إنشائها، فهي مُفيدة للوصول إلى عنصرٍ مُعيّنٍ بسرعة. إن أردت الوصول إلى عنصر لا يملك مُعرّفًا، يُمكنك استعمال التّابع querySelector()‎ للوصول إلى العنصر بأيّ مُحدِّدٍ كيفما كان. البنية العامة var element = document.getElementById(id); element‎ كائنٌ من النّوع Element يُمثّل عنصر DOM الذي يوافق مُعرّفه المُعرّف المُعطى، أو القيمة null‎ في حالة لم يوجد ...

التابع jQuery.contains()‎‎ في jQuery

jQuery.contains( container, contained )‎ القيم المعادة يعيد قيمة منطقيَّة (Boolean). الوصف يتحقَّق هذا التابع إن كان عنصر DOM معيَّن هو عنصر سليل (ancestor) من عنصر DOM آخر. jQuery.contains( container, contained )‎ أُضيف مع الإصدار: 1.4. container عنصر DOM الذي قد يحوي العنصر contained المعطى. contained العنصر DOM الذي سيتأكد التابع من أنَّه عنصرٌ سليلٌ من العنصر container. يعيد التابع ‎$.contains()‎ القيمة true إن كان العنصر contained المعطى هو عنصر سليل من العنصر container المعطى أيضًا سواءً كان ذلك العنصر ابنًا ...

التابع jQuery.contains()‎‎ في jQuery

jQuery.contains( container, contained )‎ القيم المعادة يعيد قيمة منطقيَّة (Boolean). الوصف يتحقَّق هذا التابع إن كان عنصر DOM معيَّن هو عنصر سليل (ancestor) من عنصر DOM آخر. jQuery.contains( container, contained )‎ أُضيف مع الإصدار: 1.4. container عنصر DOM الذي قد يحوي العنصر contained المعطى. contained العنصر DOM الذي سيتأكد التابع من أنَّه عنصرٌ سليلٌ من العنصر container. يعيد التابع ‎$.contains()‎ القيمة true إن كان العنصر contained المعطى هو عنصر سليل من العنصر container المعطى أيضًا سواءً كان ذلك العنصر ابنًا ...

التابع ‎‎.removeAttr()‎‎ في jQuery

‎.removeAttr( attributeName )‎ القيم المعادة يعيد كائنًا من النوع jQuery. الوصف يحذف هذا التابع خاصِّيَّة HTML محدَّدة لكل عنصر في مجموعة العناصر المطابقة. ‎.removeAttr( attributeName )‎ أُضيف مع الإصدار: 1.0. attributeName سلسلة نصِّيَّة تمثِّل اسم خاصِّيَّة HTML المراد حذفها. ابتداءً من الإصدار 1.7، يمكن أن تحتوي السلسلة النصِّيَّة على قائمة من الخاصِّيَّات المفصولة بفراغ. يستخدم التابع ‎.removeAttr()‎ الدالة removeAttribute()‎ الموجودة في JavaScript، ولكنَّه يتميز عنها بأنَّه يمكن أن يُستدعَى مع الكائن jQuery مباشرةً ويأخذ بالحسبان التسمية المختلفة للخاصِّيَّات عبر المتصفحات. ...

معامل البقية Rest في JavaScript

يسمح معامل البقية (rest parameter) بتمثيل عدد غير مُحدِّد من الوسائط المُمرَّرة إلى دالةٍ ما كمصفوفة. البنية العامة function f(a, b, ...theArgs) { // ... } الوصف إذا أُسبِقَ آخر معامل من معاملات الدالة بثلاث نقط ... فسيصبح مصفوفةً التي تبدأ من 0 حتى theArgs.length التي تحمل قيم الوسائط التي مُرِّرَت إلى الدالة. ففي الشيفرة الموجودة في القسم السابق، ستحمل المصفوفة theArgs قيمة الوسيط الثالث المُمرَّر إلى الدالة (لأنَّ أوّل وسيط سيرتبط بالمعامل a، وسيرتبط ثاني وسيط بالمعامل b) وكل ...

الكلمة المحجوزة super في JavaScript

الكلمة المحجوزة super تُستخدَم للوصول إلى الكائنات في الكائن الأب واستدعائها. يمكن استخدام التعبيرين super.prop و super[expr]‎ في الأصناف والكائنات. البنية العامة super([arguments]); // استدعاء الدالة البانية للكائن الأب super.functionOnParent([arguments]); الوصف عند استخدام الكلمة المحجوزة super في الدالة البانية فيجب أن تُستخدَم قبل أيّ استخدام للكلمة المحجوزة this، ويمكن أن تُستخدَم الكلمة المحجوزة super لاستدعاء الدوال التابعة للكائن الأب أيضًا. أمثلة استخدام super في الأصناف عند استدعاء الدوال العادية (أي أنَّ الدالة ليست دالةً بانيةً)، فستكون قيمة new.target هي undefined، وهذا ...

المعاملات الافتراضية للدوال في JavaScript

معاملات الدالة الافتراضية (default function parameters) تسمح بتهيئة معاملات الدالة مع قيم افتراضية إن لم تُمرَّر لها قيمة أثناء استدعاء الدالة أو كانت القيمة المُمرَّرة هي undefined. البنية العامة function [name]([param1[ = defaultValue1 ][, ..., paramN[ = defaultValueN ]]]) { statements } الوصف تكون قيمة المعاملات الافتراضية في JavaScript هي undefined، لكن في بعض الحالات يكون من المفيد ضبط قيمة تلك المعاملات إلى قيمةٍ أخرى، وهنا تلعب المعاملات الافتراضية دورها. في الماضي كانت الاستراتيجية العامة المتبعة لضبط قيم افتراضية ...

معامل النشر Spread في JavaScript

معامل النشر (spread operator) يسمح للكائنات التي يمكن المرور على عناصرها -مثل تعابير المصفوفات أو السلاسل النصية (أي أنها iterable)- أن توسَّع في الأماكن التي تتوقع JavaScript وجود صفر وسيط أو أكثر (عند استدعاء الدوال) أو صفر عنصر أو أكثر (في المصفوفات)، أو نشر كائن في الأماكن التي تتوقع JavaScript وجود صفر زوج أو أكثر من المفاتيح والقيم المرتبطة بها (عند تعريف الكائنات). البنية العامة عند استدعاء الدوال: myFunction(...iterableObj); في المصفوفات أو السلاسل النصية: [...iterableObj, '4', 'five', 6]; عند تعريف الكائنات (ميزة ...

عرض (50 السابقة | 50 التالية) (20 | 50 | 100 | 250 | 500).