jac*_*ane 2 javascript arrays loops
let animals = ['Hen', 'elephant', 'llama', 'leopard', 'ostrich', 'Whale', 'octopus', 'rabbit', 'lion', 'dog'];
let secretMessage = animals.map(function(animal) {
for(animal = 0; animal <= animals.length-1; animal++) {
return animals[animal].charAt(animal);
}
});
console.log(secretMessage.join(''));
Run Code Online (Sandbox Code Playgroud)
嗨,我想通过这段代码来输出字符串HelloWorld,它是由动物数组中每个字符串/元素的第一个字符组成的。但是,输出为HHHHHHHHHH。我不知道for循环是否是这里的问题?
有人可以告诉我为什么代码会产生这样的输出,我如何修改它以便成功返回期望的结果?
我现在只是一个新手,这就是为什么您的帮助将在我成为程序员的过程中发挥巨大作用。提前致谢!
尝试:
// Animals.
const animals = ['Hen', 'elephant', 'llama', 'leopard', 'ostrich', 'Whale', 'octopus', 'rabbit', 'lion', 'dog']
// Secret Message.
const secretMessage = animals.map((animal) => animal[0]).join('')
// Log.
console.log(secretMessage) // "HelloWorld"Run Code Online (Sandbox Code Playgroud)
或者:
// Animals.
const animals = ['Hen', 'elephant', 'llama', 'leopard', 'ostrich', 'Whale', 'octopus', 'rabbit', 'lion', 'dog']
// Secret Message.
const secretMessage = animals.reduce((accumulator, animal) => accumulator + animal[0], '')
// Log.
console.log(secretMessage) // "HelloWorld"Run Code Online (Sandbox Code Playgroud)