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

การหาระยะห่างระหว่างตัวอักษรสองตัวในสตริง - JavaScript

หาระยะห่าง (index difference) ระหว่างตัวอักษรสองตัวในสตริง

ตัวอย่าง

str = 'Disaster management'
a = 'i', b = 't'
// i อยู่ index 4, t อยู่ index 8 → ระยะห่าง = 4

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

const str = 'Disaster management';
const a = 'i', b = 't';

const distanceBetween = (str, a, b) => {
  const aIndex = str.indexOf(a);
  const bIndex = str.indexOf(b);
  if (aIndex === -1 || bIndex === -1) return false;
  return Math.abs(aIndex - bIndex);
};

console.log(distanceBetween(str, a, b));

ข้อควรระวัง

  • indexOf หาแค่ตัวแรกที่เจอ (first occurrence)
  • หากตัวอักษรซ้ำกัน อาจไม่ได้ระยะห่างที่ต้องการ
  • โค้ดต้นฉบับมีบั๊ก: b === -1 ควรเป็น bIndex === -1

ผลลัพธ์

4