Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Javascript

รับจุดตัดระหว่างสองช่วงใน JavaScript


สมมุติว่า เรามีอาร์เรย์ของตัวเลขสองแถวที่แทนช่วงสองช่วงเช่นนี้ −

const arr1 = [2, 5];
const arr2 = [4, 7];

เราจำเป็นต้องเขียนฟังก์ชัน JavaScript ที่รับอาร์เรย์สองอาร์เรย์ดังกล่าว

จากนั้นฟังก์ชันควรสร้างอาร์เรย์ของช่วงใหม่ ซึ่งเป็นจุดตัดของช่วงอินพุตทั้งสองและส่งกลับช่วงนั้น

ดังนั้นเอาต์พุตของอินพุตด้านบนควรมีลักษณะดังนี้ −

const output = [4, 5];

ตัวอย่าง

รหัสสำหรับสิ่งนี้จะเป็น −

const arr1 = [2, 5];
const arr2 = [4, 7];
const findRangeIntersection = (arr1 = [], arr2 = []) => {
   const [el11, el12] = arr1;
   const [el21, el22] = arr2;
   const leftLimit = Math.max(el11, el21);
   const rightLimit = Math.min(el12, el22);
   return [leftLimit, rightLimit];
};
console.log(findRangeIntersection(arr1, arr2));

ผลลัพธ์

และผลลัพธ์ในคอนโซลจะเป็น −

[ 4, 5 ]