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

การเข้ารหัสสตริงตามอัลกอริทึมใน JavaScript

ปัญหา

เราต้องเขียนฟังก์ชัน JavaScript ที่รับสตริงและเข้ารหัสตามอัลกอริทึม:

  • สตริงมีแต่คำคั่นด้วยช่องว่าง
  • เข้ารหัสแต่ละคำด้วยกติกา:
    • ตัวอักษรแรก แปลงเป็นรหัส ASCII
    • ตัวอักษรที่สอง สลับกับตัวอักษรสุดท้าย

ดังนั้น 'good' จะกลายเป็น '103doo'

ตัวอย่าง

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

const str = 'good';
const encyptString = (str = '') => {
  const [first, second] = str.split('');
  const last = str[str.length - 1];
  let res = '';
  res += first.charCodeAt(0);
  res += last;
  for (let i = 2; i < str.length - 1; i++) {
    const el = str[i];
    res += el;
  }
  res += second;
  return res;
};
console.log(encyptString(str));

ผลลัพธ์

103doo

คำอธิบายเพิ่มเติม

'good': g=103, o(ตัวสอง)↔d(ตัวสุดท้าย) → 103 + d + o + o = 103doo โค้ดสมมติคำยาวอย่างน้อย 2 ตัวอักษร ควรเพิ่มการตรวจสอบความยาว