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

การแปลงอาร์เรย์ของตัวเลขเป็นอาร์เรย์ของตัวอักษรโดยใช้ JavaScript


ปัญหา

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

  • 'word' สี่อักขระซึ่งประกอบด้วยอักขระที่ได้มาจากตัวเลขสองตัวแรกและสองตัวสุดท้ายในอาร์เรย์ ลำดับควรอ่านจากซ้ายไปขวา (ที่หนึ่ง สอง รองสุดท้าย ท้ายสุด)

  • เช่นเดียวกับข้างบน โพสต์เรียงลำดับอาร์เรย์จากน้อยไปมาก

  • เช่นเดียวกับด้านบน โพสต์เรียงลำดับอาร์เรย์จากมากไปหาน้อย

  • เช่นเดียวกับข้างต้น โพสต์แปลงอาร์เรย์เป็นอักขระ ASCII และเรียงลำดับตามตัวอักษร

สี่ส่วนควรเป็นสตริงเดียว โดยแต่ละส่วนคั่นด้วยยัติภังค์ (-)

ตัวอย่าง

ต่อไปนี้เป็นรหัส -

const arr = [99, 98, 97, 96, 81, 82, 82];
const transform = (arr = []) => {
   let res = [];
   res.push(arr[0], arr[1], arr[arr.length-2], arr[arr.length-1]);
   res = res.map(x=>String.fromCharCode(x)).join('');
   const arr1 = arr
   .map(el => String.fromCharCode(el))
   .sort();
   const arr2 = (arr1.slice(0, 2) + ',' + arr1.slice(-2))
   .split(',')
   .join('');
   const arr3 = arr2
   .split('')
   .reverse()
   .join('');
   return `${res}-${arr2}-${arr3}-${arr2}`;
};
console.log(transform(arr));

ผลลัพธ์

cbRR-QRbc-cbRQ-QRbc