جاري التحميل...

عاملَا النشر والتجميع

?????? ?????? ... ???????. ???? spread ????? ????? ???? ????? ??????? ??? ????? ??????? ????? rest ???? ?? ?????. ?????? ?? ??????? ?? ???? ???? ???????.

نشر القيم

Spread array values

javascript
const extras = ["mint", "lemon"];
const menu = ["tea", ...extras];
console.log(menu.join(" / "));

????? ??????? ?? tea / mint / lemon. ?? ????? extras ????? ????? ?? ????? ??????? ??? ???????? ???????.

نسخ المصفوفة

Make a shallow array copy

javascript
const extras = ["mint", "lemon"];
const copy = [...extras];
copy[0] = "ginger";
console.log(extras[0]);
console.log(copy[0]);

copy ?????? ?????? ?????? ???? ?? ????? ??????? extras. ??? ???? ?????: ???? ???????? ?? ????????? ????????? ??????.

نشر object

Create a related object

javascript
const order = { guest: "lida", drink: "tea" };
const withSize = { ...order, size: "regular" };
console.log(order.size);
console.log(withSize.size);

order ?? ???? size? ??? withSize ??????. ??? ?????? ???? ?????? ?? ???? ????? ?????????.

جمع الباقي بـ rest

Gather remaining values

javascript
const menu = ["tea", "mint", "lemon"];
const [first, ...remaining] = menu;
const order = { guest: "lida", drink: "tea" };
const { guest, ...details } = order;
console.log(first, remaining, details);

first ????? tea ?remaining ????? ["mint", "lemon"]. ????? details ??? drink ?? ??? guest. ??? ?????? ????? ?? ??? ??????? ??????.

معاملات rest

Compact try-it

html
<!doctype html>
<html lang="en">
<head><meta charset="utf-8"><title>Spread and Rest</title></head>
<body>
<p id="result"></p>
<script>
const extras = ["mint", "lemon"];
const menu = ["tea", ...extras];
function list(first, ...others) {
return [first, ...others].join(" / ");
}
document.getElementById("result").textContent = list(...menu);
</script>
</body>
</html>

?? list(...menu) ??? ??????? ??? ?????????. ??? function list(first, ...others) ???? rest ??????? ???????? ?? ?????? ??????. ?????? ?????? tea / mint / lemon.

يوضح الجدول الفرق: النقاط نفسها، لكن موضعها يحدد هل توسّع JavaScript القيم أم تجمع ما تبقى.

📊 ?????? ????? ????????

?????? ?????? ????
?????? ?? object ?? ??????? spread ????? [..., extras]? { ...order }? list(...menu)
??? ?? ????? rest ???? const [first, ...remaining] = menu? function list(first, ...others)

تدريب قصير

???? copy[0] ?????? ?? extras[0]. ??? ?????? ???????? ????? ?? ????? ?????.

أخطاء شائعة

?? ??? ????? rest ?? ??? ???????? ??? ????? ????? ??????? ??? ???? ??? ??????? ??????.

الخلاصة

???? spread ?? ?????? ?? object ?? ??????? ????? ????? ???? rest ?? ??? ?? ?????. ??? ??????? ???????? ????????.

🧠 اختبر معرفتك

جاهز للبدء

اختبر معرفتك

تحدى نفسك مع هذا الاختبار التفاعلي واكتشف مدى فهمك للموضوع

❓
6
الأسئلة
🎯
70%
للنجاح
♾️
∞
الوقت
🔄
∞
المحاولات

📝 التعليمات

  • اقرأ كل سؤال بعناية
  • اختر أفضل إجابة لكل سؤال
  • يمكنك إعادة الاختبار عدة مرات كما تريد
  • سيتم عرض تقدمك في الأعلى