bot.on('message', message => { if (message.content.startsWith('ch ')){ a = message.content let str1= a let str2= 'ch ' str3 = str1.split(str2) var str4 = str3.toString() bot.user.setActivity( { type: 'WATCHING' } , {name:str4} ) } }) Cuando escribo "ch book", se convierte en esto:
una coma delante de la palabra.
¿Cómo puedo arreglar esto? Gracias
Parece que simplemente está tratando de eliminar "ch" del comienzo de la cadena. No necesita dividir y matrices para eso, solo puede usar .replace() :
bot.on('message', message => { if (message.content.startsWith('ch ')){ bot.user.setActivity( { type: 'WATCHING' } , { name:message.content.replace('ch ','') }) } }) Primero debe comprender el uso de este método primero. Este método divide una cadena en una array con cada elemento delimitado por el carácter de su elección, aquí una coma.
"ch, books".split(','); // returns ["ch", " books"]Este método devuelve una representación de cadena de la matriz, que tendría elementos separados por comas y ¡terminarás volviendo al punto de partida!
["ch", " books"].toString(); // returns "ch, books"Siempre que necesite desinfectar la cadena eliminando comas u otros caracteres especiales, use este método junto con RegExp .
"ch, books, copies, notebooks".replace(/,/g, ''); // returns "ch books copies notebooks" // further remove more characters such as hyphens "ch, books, copies, note-books".replace(/,|-/g, ''); // returns "ch books copies notebooks"