Problem
We are required to write a JavaScript function that takes in an array of words and punctuations. Our function should join array elements to construct a sentence based on the following rules −
there must always be a space between words;
there must not be a space between a comma and word on the left;
there must always be one and only one period at the end of a sentence.
Example
Following is the code −
const arr = ['hey', ',', 'and', ',', 'you']; const buildSentence = (arr = []) => { let res = ''; for(let i = 0; i < arr.length; i++){ const el = arr[i]; const next = arr[i + 1]; if(next === ','){ res += el; }else{ if(!next){ res += `${el}.`; }else{ res += `${el} `; } } } return res; }; console.log(buildSentence(arr));
Output
hey, and, you.