5.1 KiB
5.1 KiB
id | title | challengeType | videoUrl | localeTitle |
---|---|---|---|---|
587d7b7b367417b2b2512b15 | Iterate Through All an Array's Items Using For Loops | 1 | يتكرر من خلال جميع عناصر المصفوفة عن طريق استخدام الحلقات |
Description
every()
، forEach()
، map()
، إلخ. ، ولكن التقنية الأكثر مرونة وتوفر لنا الأعظم مقدار التحكم هو بسيط for
حلقة. خذ بعين الاعتبار ما يلي: وظيفة greaterThanTen (arr) {باستخدام حلقة
let newArr = []؛
لـ (let i = 0؛ i <arr.length؛ i ++) {
إذا (arr [i]> 10) {
newArr.push (آر [أنا])؛
}
}
عودة newArr ؛
}
greaterThanTen ([2، 12، 8، 14، 80، 0، 1])؛
// تُرجع [12 ، 14 ، 80]
for
، تتكرر هذه الوظيفة خلال كل عنصر في الصفيف وتصل إليه ، وتضعه في اختبار بسيط قمنا بإنشائه. بهذه الطريقة ، حددنا بسهولة وببرمجية أي من عناصر البيانات أكبر من 10
، وأعدنا مصفوفة جديدة تحتوي على تلك العناصر. Instructions
filteredArray
، والتي تأخذ arr
، ومصفوفة متداخلة ، و elem
، وتقوم بإرجاع صفيف جديد. يمثل elem
عنصرًا قد يكون أو لا يكون موجودًا على واحد أو أكثر من الصفائف المتداخلة ضمن arr
. قم بتعديل الوظيفة ، باستخدام حلقة for
، لإرجاع نسخة مفلترة من المصفوفة التي تم تمريرها بحيث يتم إزالة أي صفيف متداخل داخل arr
يحتوي على elem
. Tests
tests:
- text: '<code>filteredArray([[10, 8, 3], [14, 6, 23], [3, 18, 6]], 18)</code> يجب أن يعود <code>[ [10, 8, 3], [14, 6, 23] ]</code>'
testString: 'assert.deepEqual(filteredArray([ [10, 8, 3], [14, 6, 23], [3, 18, 6] ], 18), [[10, 8, 3], [14, 6, 23]], "<code>filteredArray([[10, 8, 3], [14, 6, 23], [3, 18, 6]], 18)</code> should return <code>[ [10, 8, 3], [14, 6, 23] ]</code>");'
- text: '<code>filteredArray([ ["trumpets", 2], ["flutes", 4], ["saxophones", 2] ], 2)</code> يجب أن تعود <code>[ ["flutes", 4] ]</code>'
testString: 'assert.deepEqual(filteredArray([ ["trumpets", 2], ["flutes", 4], ["saxophones", 2] ], 2), [["flutes", 4]], "<code>filteredArray([ ["trumpets", 2], ["flutes", 4], ["saxophones", 2] ], 2)</code> should return <code>[ ["flutes", 4] ]</code>");'
- text: 'يجب أن تعود <code>filteredArray([ ["amy", "beth", "sam"], ["dave", "sean", "peter"] ], "peter")</code> <code>[ ["amy", "beth", "sam"] ]</code>'
testString: 'assert.deepEqual(filteredArray([["amy", "beth", "sam"], ["dave", "sean", "peter"]], "peter"), [["amy", "beth", "sam"]], "<code>filteredArray([ ["amy", "beth", "sam"], ["dave", "sean", "peter"] ], "peter")</code> should return <code>[ ["amy", "beth", "sam"] ]</code>");'
- text: '<code>filteredArray([[3, 2, 3], [1, 6, 3], [3, 13, 26], [19, 3, 9]], 3)</code> يجب أن تعود <code>[ ]</code>'
testString: 'assert.deepEqual(filteredArray([[3, 2, 3], [1, 6, 3], [3, 13, 26], [19, 3, 9]], 3), [], "<code>filteredArray([[3, 2, 3], [1, 6, 3], [3, 13, 26], [19, 3, 9]], 3)</code> should return <code>[ ]</code>");'
- text: و <code>filteredArray</code> وظيفة يجب أن تستخدم ل <code>for</code> حلقة
testString: 'assert.notStrictEqual(filteredArray.toString().search(/for/), -1, "The <code>filteredArray</code> function should utilize a <code>for</code> loop");'
Challenge Seed
function filteredArray(arr, elem) {
let newArr = [];
// change code below this line
// change code above this line
return newArr;
}
// change code here to test different cases:
console.log(filteredArray([[3, 2, 3], [1, 6, 3], [3, 13, 26], [19, 3, 9]], 3));
Solution
// solution required