2017-10-16 156 views
-3

我想要使用for循环来遍历数组并检查数组中每个单词的第一个字母并检查它是否以M开头,但是我似乎无法弄清楚如何正确设置。For循环检查数组中的第一个字母

到目前为止,我有这样的:

for (var animalsName = cats[0]; animalsName <= cats; animalsName++){ 
    if (animalsName.charAt(0) == 'M') { 
     console.log("No treat for " + animalsName + "."); 
    } else { 
     console.log(animalsName + " loved their treat!"); 
    } 
} 
+2

'animalsName'看起来这将是一个字符串,所以我很好奇,你期待'animalsName ++'做什么。也许只是阅读一些基本的“for循环”教程,如[this](https://www.w3schools.com/js/js_loop_for.asp)。 – csmckelvey

+0

是的,我想它不会做任何事情,但我不知道如何增加一个字符串。 – Db12797

+0

“_我不知道如何增加一个字符串_”那是因为你没有。你增加某种数字并用它从你的数组中获取字符串。 – csmckelvey

回答

-1

你非常接近。

我在for循环中做了小的改动,以正确地迭代并获取动物名称的第一个字符。

var cats = []; 
 
cats.push('mname1'); 
 
cats.push('tname1'); 
 
cats.push('mname2'); 
 
cats.push('Mname3'); 
 

 

 
for (var index = 0; index < cats.length; index++){ 
 

 
    var animalsName = cats[index]; 
 
    
 
    if (animalsName.substr(0,1).toLowerCase() === 'm') { 
 
     console.log("No treat for " + animalsName + "."); 
 
    } else { 
 
     console.log(animalsName + " loved their treat!"); 
 
    } 
 
}

+0

为什么downvote?我发现我的答案被复制并粘贴为单独的答案并标记为工作解决方案。 –

-1
for (let i = 0; i < cats.length; i += 1) { 
    if (cats[i].charAt(0).toLowerCase() === 'm') { 
    // do whatever you want 
    } 
} 

这将环比cats阵列和检查第一letter-- charAt(0) --oF阵列中的每个元素。如果转换成小写的第一个字母是'm',那么你可以做任何你想做的事情。

相关问题