Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何通过输出元音(str)来编写函数,str获取一个随机字符串作为参数_Javascript - Fatal编程技术网

Javascript 如何通过输出元音(str)来编写函数,str获取一个随机字符串作为参数

Javascript 如何通过输出元音(str)来编写函数,str获取一个随机字符串作为参数,javascript,Javascript,我正在做一个练习,该方法的输出应该是字符串中的所有元音(a、e、I、o、u、y)。有什么建议吗 var letters = "abcdeiforusy"; var len = randint(12) + 10; var word = ""; for (var i = 0; i < len; i++){ word += letters.charAt(randint(letters.length)); var vowels=a } var letters=“ab

我正在做一个练习,该方法的输出应该是字符串中的所有元音(a、e、I、o、u、y)。有什么建议吗

var letters = "abcdeiforusy"; 
var len = randint(12) + 10; 
var word = ""; 

for (var i = 0; i < len; i++){ 
    word += letters.charAt(randint(letters.length)); 
    var vowels=a
} 
var letters=“abcdeiforusy”;
var len=randint(12)+10;
var-word=“”;
对于(var i=0;i
这可以通过正则表达式轻松完成:

function vowels(str){
    return str.replace(/[^aeiou]/gi,"");
}
此函数将返回[]中唯一的元音:

function uniqueVowels(str){
    var vowelArr = [];
    var tmpVowels = str.replace(/[^aeiou]/gi,"").split("");
    for(var i = 0; i < tmpVowels.length; i++){
        if(vowelArr.indexOf(tmpVowels[i].toLowerCase()) == -1){
           vowelArr.push(tmpVowels[i].toLowerCase());
        }          
    }
    return vowelArr;
}
函数唯一元音(str){
var-vouelarr=[];
var tmpVowels=str.replace(/[^aeiou]/gi,“”);
对于(变量i=0;i

JS Fiddle:

要确定字母是否是元音,您可以使用不同的方法,如中所述。你甚至可以找到一些来比较他们的表现

然后,您的解决方案可能看起来像这样(我使用了字符集方法,因为它可能比正则表达式更容易理解,但两者都可以很好地工作):

//确定字母是否为元音
函数是元音(c){
返回['a','e','i','o','u']。索引(c)!=-1
}
var str=“abcdeiforusy”;
var len=str.length;
var vowerlsinstr=“”;
对于(变量i=0;i
$(函数(){
var s=‘gokul’;
变量前、后,元音=“”;
对于(变量i=0;i

只是澄清一下,是否要输出所有出现的元音(按顺序)?或者所有元音的出现顺序。例如,如果我输入
stackoverflow
您希望输出是
aeo
还是
aoeo
?上次我检查时…“y”不是元音。这个代码毫无意义。为什么
len
是随机的?为什么这里涉及到随机性?什么是
a
?另外,随机函数(
len=randint
letters.charAt(randint(…)
?@series0ne,这取决于:)有什么用呢?所以要回答实际问题(“这个练习需要学生找出如何完成它并根据需要得到结果”):在StackOverflow上发帖,有人会帮你得到它。实际上,我还没有读到关于学生要求的评论。但我想,在一天结束时,学习并不是要得到答案,而是要能够理解解决方案,这样你就可以自己解决类似的问题。否则,你什么也学不到:$Tks!这就是我想做的。但是,经过这么长时间的尝试,没有结果,我不得不寻求聪明人的帮助。谢谢你的理解和评论。
// Determine if a letter is vowel or not
function isVowel(c) {
    return ['a', 'e', 'i', 'o', 'u'].indexOf(c) !== -1
}

var str = "abcdeiforusy"; 
var len = str.length;
var vowelsInStr = "";

for (var i = 0; i < len; ++i) {
    if (isVowel(str[i])) {
        // Do something with the vowel, e.g. print it in the console
        console.log(str[i]);

        // Or add it to the array of vowels
        vowelsInStr += str[i];
    }
}

// Print the vowels array
console.log(vowelsInStr);
$(function () {
    var s = 'gokul';
    var front, back, vowel = '';
    for (var i = 0; i < s.length; i++) {
        var c = s.charAt(i);
        if ((c == 'A') || (c == 'a') || (c == 'E') || (c == 'e') || (c == 'I') || (c == 'i') || (c == 'O') || (c == 'o') || (c == 'U') || (c == 'u')) {
            front = s.substring(0, i);
            vowel += c;
            back = s.substring(i + 1);
            s = front + back;
        }
    }
    console.log(vowel);
    console.log(s);
});