الكلمة الرئيسية للإرجاع

استخدِم return لتحديد القيمة التي يجب أن تنتجها الدالة كنهائية. نتيجته. عندما يصل المُترجم الفوري إلى عبارة return، تكون الدالة التي يحتوي على هذه العبارة فورًا، ويتم إرجاع القيمة المحددة إلى السياق الذي تم فيه استدعاء الدالة:

const myFunction = function() {
   
return 2 + 2;
}

myFunction
();
> 4

الدالة التي تُرجع قيمة يمكن التعامل معها بشكل فعال باعتبارها البيانات التي على غرار المتغير:

const myFunction = function() {
   
return 2 + 2;
}

myFunction
() + myFunction();
> 8

العبارة return بدون تعبير تُنهي الدالة وتعرض undefined:

const myFunction = function() {
   
return;
}

myFunction
();
> undefined

نظرًا لأن الكلمة الرئيسية return تشير إلى نهاية الدالة، فإن أي رمز التالية return التي تمت مصادفتها لا يتم تنفيذها:

const myFunction = function() {
   
return true;
   console
.log( "This is a string." );
}

myFunction
();
> true

بالإضافة إلى ذلك، قد يؤدي الرمز الذي يتبع عبارة return التي تمت مصادفتها إلى حدوث تحذير (ولكن ليس خطأً) في بعض المتصفحات وحدات التحكم بالتطوير:

const myFunction = function() {
   
return true;
   console
.log( "This is a string." );
}
> unreachable code after return statement

myFunction
();
> true

مرة أخرى، ينطبق هذا الأمر فقط على عبارة return التي تم رصدها أثناء تنفيذ الدالة، وليس أي رمز برمجي يتبع عبارة return بالتتابع:

const myFunction = function( myParameter ) {
   
if( myParameter === undefined ) {
   
return "This is the result.";
   
}
   
return "This is the alternate result.";
}

myFunction
();
> "This is the result."

myFunction
( true );
> "This is the alternate result."

"دائرة قصيرة" يمكن للدالة التي تستخدم return مبكرة توفير مزيد من الإيجاز والوضوح من عبارة return واحدة في نهاية الدالة. على سبيل المثال، تحدد الدالة التالية ما إذا كانت القيمة التي تم تمريرها هي سلسلة تحتوي على خمسة أو أكثر من الأحرف. إذا لم تكن القيمة التي تم تمريرها سلسلة حرفية، فإن التعليمة البرمجية التي يكون عدد الأحرف غير ضروري، ويمكن أن تعرض الدالة false النتيجة فورًا:

function myFunction( myString ) {
   
if( typeof myString !== "string" ) {
   
return false;
   
}
   
if( myString.length >= 5 ) {
   
return true;
   
} else {
   
return false;
   
}
}

myFunction
( 100 );
> false

myFunction
( "St" );
> false

myFunction
( "String." );
> true

تعابير الدوال السهمية فريدة من نوعها حيث تتم الإشارة ضمنًا إلى الكلمة الرئيسية return عند نص دالة سهم يحتوي على تعبير واحد وبدون بنية كتل:

const myFunction = () => 2 + 2;

myFunction
();
> 4

إذا كنت تستخدم بنية كتلة لتحديد نص دالة السهم، فإن قيمة return واضحة مطلوبة، حتى إذا كان نص الدالة يحتوي على تعبير واحد فقط:

const myFunction = () => { 2 + 2 };

myFunction
();
> undefined
const myFunction = () => { return 2 + 2 };

myFunction
();
> 4

التحقق من فهمك

ما هو الغرض من استخدام return؟

إرجاع التعليمة البرمجية إلى بداية الدالة.
تحديد النتيجة النهائية للدالة.