获取Java数组中每个字符串的第一个字符

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循环是否是这里的问题?

有人可以告诉我为什么代码会产生这样的输出,我如何修改它以便成功返回期望的结果?

我现在只是一个新手,这就是为什么您的帮助将在我成为程序员的过程中发挥巨大作用。提前致谢!

Arm*_*ran 5

Mapfor loop本身就是一个。

尝试:

// 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)