เราต้องเขียนฟังก์ชัน JavaScript ที่รับอาร์เรย์ของ Numbers (ทั้งค่าบวกและค่าลบ)
ฟังก์ชันควรส่งคืนอาร์เรย์ของจำนวนบวกทั้งหมดจากอาร์เรย์ที่มีค่าลบในอาร์เรย์
ตัวอย่างเช่น หากอาร์เรย์อินพุตเป็น −
const arr = [1, 5, −3, −5, 3, 2];
จากนั้นผลลัพธ์ควรเป็น −
const output = [5, 3];
ตัวอย่าง
รหัสสำหรับสิ่งนี้จะเป็น −
const arr = [1, 5, −3, −5, 3, 2];
const findNumbers = (arr = []) => {
const count = Object.create(null);
const result = [];
arr.forEach(el => {
if (count[−el]) {
result.push(Math.abs(el));
count[−el]−−;
return;
};
count[el] = (count[el] || 0) + 1;
});
return result;
}
console.log(findNumbers(arr)); ผลลัพธ์
และผลลัพธ์ในคอนโซลจะเป็น −
[5, 3]