2.1 KiB
id, title, challengeType, forumTopicId, dashedName
| id | title | challengeType | forumTopicId | dashedName |
|---|---|---|---|---|
| 587d7b7b367417b2b2512b17 | دمج القوائم باستخدام Spread Operator | 1 | 301156 | combine-arrays-with-the-spread-operator |
--description--
مِيزة كبيرة أخرى لمشغل spread هي القدرة على الدمج بين القوائم، أو إدراج جميع عناصر قائمة في قائمة أخرى، في أي ترتيب. في معظم اللغات التقليدية، يمكننا أن نجمع بين القوائم، لكن هذا يسمح لنا فقط بالدمج بين القوائم في نهاية واحدة منهم، وفي بداية الأخرى. تجعل صيغة Spread العملية التالية بسيطة للغاية:
let thisArray = ['sage', 'rosemary', 'parsley', 'thyme'];
let thatArray = ['basil', 'cilantro', ...thisArray, 'coriander'];
thatArray ستكون لها القيمة ['basil', 'cilantro', 'sage', 'rosemary', 'parsley', 'thyme', 'coriander'].
وباستخدام صيغة spread، حققت للتو عملية كان من شأنها أن تكون أكثر تعقيدا وأكثر تعمقا لو استخدمنا أساليب تقليدية.
--instructions--
لقد حددت وظيفة spreadOut التي ترجع المتغير sentence. عدل الوظيفة باستخدام مشغل spread بحيث تنتج القائمة ['learning', 'to', 'code', 'is', 'fun'].
--hints--
spreadOut يجب أن تنتج <["learning", "to", "code", "is", "fun"]
assert.deepEqual(spreadOut(), ['learning', 'to', 'code', 'is', 'fun']);
يجب أن تستخدم وظيفة spreadOut صيغة spread
assert.notStrictEqual(spreadOut.toString().search(/[...]/), -1);
--seed--
--seed-contents--
function spreadOut() {
let fragment = ['to', 'code'];
let sentence; // Change this line
return sentence;
}
console.log(spreadOut());
--solutions--
function spreadOut() {
let fragment = ['to', 'code'];
let sentence = ['learning', ...fragment, 'is', 'fun'];
return sentence;
}