Framed text

by wrxsti85

CSS

body {
	font-family: monospace;
}

JavaScript

let strArr = ['What', 'did', 'you', 'think', 'was', 'going', 'to', 'happen?'],
	frameStr = '*',
	frameLength = strArr.reduce(function (a, b) { return a.length > b.length ? a : b; }).length,
	setFrame = function(){
		let output = '';
		output += frameHeadFoot();
		for (str in strArr) {
			let strLength = strArr[str].length;
			output += frameStr;
			output += strArr[str];
			for (let i = frameLength; i - strLength > 0; i--) {
				output += '&nbsp';
			}
			output += frameStr;
			output += '<br />';
		}
		output += frameHeadFoot();
		return output;
	},
	frameHeadFoot = function(){
		let output = '';
		for (let i = frameLength + 2; i > 0; i--) {
			output += frameStr;
		}
		output += '<br />';
		return output;
	};
	
$('body').append(setFrame(strArr));