I have a String
var letters="ABCDEFGHIJK";
How i can pick 4 random characters from that. with Math.random() or something else?
The output should spend something like that:
DAKF or FAHG ...
Best regards
I have a String
var letters="ABCDEFGHIJK";
How i can pick 4 random characters from that. with Math.random() or something else?
The output should spend something like that:
DAKF or FAHG ...
Best regards
You can shuffle and pick top 4 (or last 4) characters
var shuffled = (str) => str.split('').sort(function() {
  return 0.5 - Math.random();
}).join('');
var letters = "ABCDEFGHIJK";
console.log(shuffled(letters).slice(-4)); //last 4
console.log(shuffled(letters).slice(-4));  //last 4
 
console.log(shuffled(letters).substring(0,4));  //top 4
If multiple instances are same characters are allowed , the implementation could be like this:
var letters="ABCDEFGHIJK";
var arr=letters.split("");
var str="";
var num=0;
while(num<4){
    str+=arr[Math.floor(Math.random()*10)];
    num++;
}
console.log(str);
In case you wanted unique letters from Math.random:
var letters="ABCDEFGHIJK";
var arr=letters.split("");
var str="";
var num=0;
while(num<4){
var char=arr[Math.floor(Math.random()*10)];
 if(str.includes(char)){
   continue;
 }
 else{
   str+=char;
   num++;
 }
}
console.log(str);
I would make your letters an array and use following code:
var letters=["A","B","C","D","E","F","G","H","I","J","K"];
for (i = 0; i < 4; i++){
var number = Math.floor((Math.random() * 10));
console.log(letters[number]);
}
If you want the letters displayed behind each other create a new variable and concatenate the letters in the new variable each time you loop it.