Computer >> Máy Tính >  >> Lập trình >> Javascript

Đảo ngược các nguyên âm trong JavaScript chuỗi

Chúng tôi được yêu cầu viết một hàm JavaScript lấy một chuỗi làm đầu vào và chỉ đảo ngược các nguyên âm của một chuỗi.

Ví dụ -

Nếu chuỗi đầu vào là -

const str = 'Hello';

Sau đó, đầu ra phải là -

const output = 'Holle';

Mã cho điều này sẽ là -

const str = 'Hello'; const reverseVowels = (str = '') => {
   const vowels = new Set(['a','e','i','o','u','A','E','I','O','U']);
   let left = 0, right = str.length-1;
   let foundLeft = false, foundRight = false;
   str = str.split(""); while(left < right){
      if(vowels.has(str[left])){
         foundLeft = true
      };
      if(vowels.has(str[right])){
         foundRight = true
      };
      if(foundLeft && foundRight){
         [str[left],str[right]] = [str[right],str[left]];
         foundLeft = false; foundRight = false;
       }; if(!foundLeft) {
         left++
      }; if(!foundRight) {
         right--
      };
   };
   return str.join("");
};
console.log(reverseVowels(str));

Và đầu ra trong bảng điều khiển sẽ là -

Holle