Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> JavaScript

หาความห่างระหว่างรายการในอาร์เรย์ด้วย JavaScript

เราต้องเขียนฟังก์ชัน arrayDistance() ที่รับอาร์เรย์ของตัวเลขและคืนค่าอาร์เรย์อีกตัวหนึ่งที่มีองค์ประกอบเป็นความต่างระหว่างสององค์ประกอบที่ติดกันจากอาร์เรย์ต้นฉบับ

ตัวเช่น ถ้าอาร์เรย์อินพุตคือ:

const arr = [1000, 2000, 5000, 4000, 300, 0, 1250];

ผลลัพธ์จะเป็น:

[(1000-2000), (2000-5000), (5000-4000), (4000-300), (300-0), (0-1250)]

มาเขียนโค้ดสำหรับฟังก์ชันนี้กัน:

ตัวอย่างโค้ด

const arr = [1000, 2000, 5000, 4000, 300, 0, 1250];

const arrayDistance = arr => {
  return arr.reduce((acc, val, ind) => {
    if (arr[ind + 1] !== undefined) {
      return acc.concat(Math.abs(val - arr[ind + 1]));
    } else {
      return acc;
    }
  }, []);
};

console.log(arrayDistance(arr));

ผลลัพธ์

ผลลัพธ์ในคอนโซลจะเป็นดังนี้:

[ 1000, 3000, 1000, 3700, 300, 1250 ]