Pig Latin

Pig Latin 把一个英文单词的第一个辅音或辅音丛(consonant cluster)移到词尾,然后加上后缀 "ay"。

如果单词以元音开始,你只需要在词尾添加 "way" 就可以了。

function translate(str) {
  //定义元音字母组成的字符数组
  var vowel=['a','e','i','o','u'];
  //保存str中开头的辅音丛的长度
  var i=0;
  var newstr=str;
  //循环求出字符串str中开头的辅音丛的长度i
  while(i<str.length){
    //通过arr.indexOf判断字符是否是元音
    //如果元音数组vowel中不包含该字符,则为辅音;
    //否则str中首字符即为元音,直接退出循环
    if(vowel.indexOf(str[i])==-1){
      i++;
    }
    else{
      break;
    }
  }
  //如果str开头即为元音,则直接在字符尾部加上way
  if(i==0){
    newstr=newstr+"way";  
  }
  //如果str开头存在辅音丛,则将str首的辅音丛直接移到字符串尾,并加上ay
  else{
    newstr=newstr.substr(i)+newstr.substr(0,i)+"ay";   
  }
  return newstr;
}

translate("california");
function translate(str) {
  var yuan = ["a","e","i","o","u"];
  if(yuan.indexOf(str[0]) >= 0){
    return str + "way";
  }
  while(yuan.indexOf(str[0]) < 0){
    str = str.substr(1) + str.substr(0,1);
  }
  return str + "ay";
}
原文地址:https://www.cnblogs.com/fffangrui/p/6108902.html