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

สับเปลี่ยนสตริงตามอาร์เรย์ใน JavaScript


เราจำเป็นต้องเขียนฟังก์ชัน JavaScript ที่รับสตริง โดยพูดว่า str เป็นอาร์กิวเมนต์แรกและอาร์เรย์ของจำนวนเต็มบวก เช่น arr มีความยาวเท่ากับอาร์กิวเมนต์ที่สอง

ฟังก์ชันของเราควรสับเปลี่ยนอักขระในสตริงเพื่อให้อักขระที่ตำแหน่ง ith ย้ายไปที่ arr[i] ในสตริงที่สับเปลี่ยน

ตัวอย่างเช่น −

หากสตริงอินพุตและอาร์เรย์เป็น −

const str = 'example';
const arr = [5, 2, 0, 6, 4, 1, 3];

จากนั้นผลลัพธ์ควรเป็น −

const output = 'alxepem';

ตัวอย่าง

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

const str = 'example';
const arr = [5, 2, 0, 6, 4, 1, 3];
const shuffleString = (str = '', arr = []) => {
   let res = '';
   const map = new Map();
   for (let i = 0; i < arr.length; i++) {
      const char = str.charAt(i), index = arr[i]
      map.set(index, char)
   };
   for (let i = 0; i < arr.length; i++){
      res += map.get(i);
   };
   return res;
};
console.log(shuffleString(str, arr));

ผลลัพธ์

ต่อไปนี้เป็นเอาต์พุตคอนโซล -

alxepem