Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

141
Visualizações
Cómo crear una matriz a partir de múltiples salidas node.js

tengo este codigo

 bot.webex.memberships.list({roomId: bot.room.id}) .then((memberships) => { for (const member of memberships.items) { if (member.personId === bot.person.id) { // Skip myself! continue; } let names = (member.personDisplayName) ? member.personDisplayName :member.personEmail; bot.say(`Hello ${member.personDisplayName`);

Que producen múltiples salidas línea por línea como esta:

Juan Dou

alfredo pennivor

michel lee

Necesito crear una matriz a partir de esta salida, aleatorizar esta matriz y el bot debe decir solo un nombre aleatorio de la matriz. Tenga en cuenta que el número de nombres puede ser diferente

PD: trato de usar split pero obtengo 3 matrices diferentes en lugar de una.

about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

Primero, en esta pregunta se explica cómo tomar un elemento aleatorio de una matriz.

Para mostrar solo un elemento aleatorio, que NO es su propio nombre, entonces esto debería funcionar para usted. Dado que memberships.items ya es una matriz, podemos extraer directamente un elemento aleatorio de ella.

Código de ejemplo:

 bot.webex.memberships.list({roomId: bot.room.id}) .then((memberships) => { let member // take random member and repeat until it's not the current user. do { const items = memberships.items // get random element // https://stackoverflow.com/questions/5915096/get-a-random-item-from-a-javascript-array/5915122#5915122 member = items[Math.floor(Math.random()*items.length)]; } while(member.personId === bot.person.id); bot.say(`Hello ${member.personDisplayName}`) })
about 4 years ago · Juan Pablo Isaza Relatório

0

Puede filter los miembros que no son usted y luego map esa matriz de objetos para crear una lista de nombres. Luego selecciona un nombre aleatorio de esa matriz.

 bot .webex .memberships .list({roomId: bot.room.id}) .then(logRandomName);

Aquí hay un ejemplo de trabajo basado en su código.

 const bot = { person: { id: 4, name: 'Joe' } }; const memberships=[{personId:1,name:"Fozzie Bear"},{personId:2,name:"Carlos The Jackal"},{personId:3,name:"Bob From Accounting"},{personId:4,name:"Joe"},{personId:5,name:"Gunther"},{personId:6,name:"Ali"},{personId:7,name:"Renaldo"}]; function logRandomName(memberships) { // First `filter` over the memberships array to // to produce a new array that doesn't contain the // member object that matches the bot.person.id const names = memberships.filter(member => { return member.personId !== bot.person.id; // And then `map` over that array to return an // array of names }).map(member => member.name); const rnd = Math.floor(Math.random() * names.length); // Then pick a random name from the names array console.log(`Hallo ${names[rnd]}`); } logRandomName(memberships);

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda