How to convert Set to string with space?

JavascriptStringEcmascript 6Set

Javascript Problem Overview


I want to convert JavaScript Set to string with space.

For example, if I have a set like:

var foo = new Set();
foo.add('hello');
foo.add('world');
foo.add('JavaScript');

And I'd like to print the string from the set: hello world JavaScript (space between each element).

I tried below codes but they are not working:

foo.toString(); // Not working
String(foo); // Not working

Is there simplest and easiest way to convert from Set to string?

Javascript Solutions


Solution 1 - Javascript

You can use Array.from:

Array.from(foo).join(' ')

or the spread syntax:

[...foo].join(' ')

Solution 2 - Javascript

You can iterate through the set and build an array of the elements and return the desired string by joining the array.

var foo = new Set();
foo.add('hello');
foo.add('world');
foo.add('JavaScript');
let strArray = [];

for(str of foo){
  strArray.push(str);
}

console.log(strArray.join(" "));

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionKimchiManView Question on Stackoverflow
Solution 1 - JavascriptMihai Alexandru-IonutView Answer on Stackoverflow
Solution 2 - JavascriptKetan RamtekeView Answer on Stackoverflow