استخدِم 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
؟